advpack: Use the FAILED and SUCCEEDED macros instead of comparing to S_OK or zero.

Mike McCormack mike at
Mon May 1 20:48:22 CDT 2006

James Hawkins wrote:

> -            if ((hr = callback(hinf, buffer, arg)) != S_OK)
> +            if (FAILED(hr = callback(hinf, buffer, arg)))

It's usually a bad idea to do function calls or assignments inside 
macros... in this case it's safe, but sometimes the macro is something like:

#define FAILED(hr) (((hr)>0xf00) && (hr)<0xb00))

then the function would get called twice...

It's even more fun if you do:



More information about the wine-devel mailing list