[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    Re: ol32: Make enumx implementation look more like a COM interface.
From:       Alexandre Julliard <julliard () winehq ! org>
Date:       2013-06-24 11:52:54
Message-ID: 871u7r3euh.fsf () wine ! dyndns ! org
[Download RAW message or body]

Dmitry Timoshkov <dmitry@baikal.ru> writes:

> Alexandre Julliard <julliard@winehq.org> wrote:
>
>> > The patch actually removes the casts, the only cast that remains is the cast
>> > on the caller's side for the vtable pointer (which is much cleaner IMO since
>> > every COM object implements IUnknown), but the implementation itself is cast
>> > free, and looks now as an actual COM object.
>> 
>> Not really. An actual COM object would contain a pointer to a vtable for
>> the correct interface. IUnknown is not much better than void*.
>
> enumx doesn't need anything else besides IUnknown interface, having right
> inteface definition won't change anything.

enumx is not a real interface. The real interfaces are
IEnumSTATPROPSETSTG and IEnumSTATPROPSTG, and that's what the vtables
should be, in the corresponding objects. The common code can be shared
with helper functions.

-- 
Alexandre Julliard
julliard@winehq.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic