quartz: update ICOM_THIS_MULTI to follow the new COM standard

Jacek Caban jacek at codeweavers.com
Sat Mar 31 08:41:21 CDT 2012


On 3/31/12 3:36 PM, John Klehm wrote:
> On Fri, Mar 30, 2012 at 11:08 AM, Jacek Caban<jacek at codeweavers.com>  wrote:
>> On 03/30/12 17:55, Aric Stewart wrote:
>>> diff --git a/dlls/quartz/quartz_private.h b/dlls/quartz/quartz_private.h
>>> index 35cd52b..d2f680c 100644
>>> --- a/dlls/quartz/quartz_private.h
>>> +++ b/dlls/quartz/quartz_private.h
>>> @@ -38,7 +38,7 @@
>>>   #define BYTES_FROM_MEDIATIME(time) SEC_FROM_MEDIATIME(time)
>>>   #define MSEC_FROM_MEDIATIME(time) ((time) / 10000)
>>>
>>> -#define ICOM_THIS_MULTI(impl,field,iface) impl* const This=(impl*)((char*)(iface) - offsetof(impl,field))
>>> +#define ICOM_THIS_MULTI(impl,field,iface) impl* const This=CONTAINING_RECORD(iface, impl, field)
>> These should disappear once the clean up of affected code is done.
>>
>
> Just for my own curiosity, I assume these pages are the preferred way?
>
> http://wiki.winehq.org/COMGuideline
> http://wiki.winehq.org/ComCleanup

Yes, that's the preferred way.

Jacek



More information about the wine-devel mailing list