Dmitry Timoshkov <dmi...@baikal.ru> writes:

> Alexandre Julliard <julli...@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
julli...@winehq.org


Reply via email to