Tracing weirdness in the kernel32:profile tests

Michael Karcher wine at mkarcher.dialup.fu-berlin.de
Tue Mar 31 04:00:16 CDT 2009


Am Dienstag, den 31.03.2009, 09:42 +0200 schrieb Paul Vriens:

> When I now run the test I get (and I omitted the buf/data output here):
> 
> profile.c:835: Test failed: File doesn't match
> profile.c:835: Test failed: File doesn't match
> profile.c:835: Test failed: File doesn't match
> profile.c:835: Test failed: File doesn't match
> 
> So the linenumbers are not the ones from the original ok() message but instead 
> the ones from the last trace() message.
> 
> Any idea?

Expected behaviour. You must not call trace from within the argument
list of an ok() statement. ok()/trace() first sets a global variable to
the current location, and then calls a printing function passing and
evaluating the parameters. If one of them changes the global variable
already set, the location printed is wrong, as you see here.

Regards,
  Michael Karcher




More information about the wine-devel mailing list