Michael Stefaniuc : objsel: COM cleanup for the IDsObjectPicker iface.
Alexandre Julliard
julliard at winehq.org
Fri Jan 14 12:46:33 CST 2011
Module: wine
Branch: master
Commit: f0bd3e694b60f662a473aeda4788415c1d6241f5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f0bd3e694b60f662a473aeda4788415c1d6241f5
Author: Michael Stefaniuc <mstefani at 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;
More information about the wine-cvs
mailing list