Hi AJ,
2010/2/22 Alexandre Julliard julliard@winehq.org:
Maarten Lankhorst m.b.lankhorst@gmail.com writes:
@@ -48,7 +48,11 @@ #endif
#ifndef IsEqualPropertyKey +#ifdef __cplusplus #define IsEqualPropertyKey(a,b) (((a).pid == (b).pid) && IsEqualIID((a).fmtid,(b).fmtid)) +#else +#define IsEqualPropertyKey(a,b) (((a)->pid == (b)->pid) && IsEqualIID(&(a)->fmtid,&(b)->fmtid)) +#endif
This doesn't match the PSDK. Where does this come from?
In C, REFPROPERTYKEY becomes PROPERTYKEY*, in C++ it's PROPERTYKEY &, so IsEqualPropertyKey will need a different macro. The psdk doesn't define this properly for the C case, but since I need it in C code I need it defined, unless you want me to do IsEqualPropertyKey(*key1, *key2), but even that wouldn't work because of the IsEqualIID..
Cheers, Maarten.