Module: wine Branch: master Commit: f0bd3e694b60f662a473aeda4788415c1d6241f5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f0bd3e694b60f662a473aeda47...
Author: Michael Stefaniuc mstefani@redhat.de Date: Fri Jan 14 00:46:40 2011 +0100
objsel: COM cleanup for the IDsObjectPicker iface.
---
dlls/objsel/objsel.c | 15 ++++++++++----- dlls/objsel/objsel_private.h | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/objsel/objsel.c b/dlls/objsel/objsel.c index 3ba2ac1..f258e1d 100644 --- a/dlls/objsel/objsel.c +++ b/dlls/objsel/objsel.c @@ -99,12 +99,17 @@ static VOID OBJSEL_IDsObjectPicker_Destroy(IDsObjectPickerImpl *This) }
+static inline IDsObjectPickerImpl *impl_from_IDsObjectPicker(IDsObjectPicker *iface) +{ + return CONTAINING_RECORD(iface, IDsObjectPickerImpl, IDsObjectPicker_iface); +} + /********************************************************************** * OBJSEL_IDsObjectPicker_AddRef (also IUnknown) */ static ULONG WINAPI OBJSEL_IDsObjectPicker_AddRef(IDsObjectPicker * iface) { - IDsObjectPickerImpl *This = (IDsObjectPickerImpl *)iface; + IDsObjectPickerImpl *This = impl_from_IDsObjectPicker(iface); ULONG ref;
TRACE("\n"); @@ -127,7 +132,7 @@ static ULONG WINAPI OBJSEL_IDsObjectPicker_AddRef(IDsObjectPicker * iface) */ static ULONG WINAPI OBJSEL_IDsObjectPicker_Release(IDsObjectPicker * iface) { - IDsObjectPickerImpl *This = (IDsObjectPickerImpl *)iface; + IDsObjectPickerImpl *This = impl_from_IDsObjectPicker(iface); ULONG ref;
TRACE("\n"); @@ -219,9 +224,9 @@ HRESULT WINAPI OBJSEL_IDsObjectPicker_Create(LPVOID *ppvObj) sizeof(IDsObjectPickerImpl)); if (Instance != NULL) { - Instance->lpVtbl = &IDsObjectPicker_Vtbl; - OBJSEL_IDsObjectPicker_AddRef((IDsObjectPicker *)Instance); - + Instance->IDsObjectPicker_iface.lpVtbl = &IDsObjectPicker_Vtbl; + OBJSEL_IDsObjectPicker_AddRef(&Instance->IDsObjectPicker_iface); + *ppvObj = Instance; return S_OK; } diff --git a/dlls/objsel/objsel_private.h b/dlls/objsel/objsel_private.h index 62d6eb4..13ab577 100644 --- a/dlls/objsel/objsel_private.h +++ b/dlls/objsel/objsel_private.h @@ -55,7 +55,7 @@ typedef struct
typedef struct { - IDsObjectPickerVtbl *lpVtbl; + IDsObjectPicker IDsObjectPicker_iface; LONG ref; } IDsObjectPickerImpl;