[PATCH 2/8] hnetcfg: Use an iface instead of an vtbl pointer in fw_manager.

Michael Stefaniuc mstefani at redhat.de
Mon Dec 20 04:34:08 CST 2010


---
 dlls/hnetcfg/manager.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/hnetcfg/manager.c b/dlls/hnetcfg/manager.c
index 7d6a7a5..6192c2d 100644
--- a/dlls/hnetcfg/manager.c
+++ b/dlls/hnetcfg/manager.c
@@ -37,13 +37,13 @@ WINE_DEFAULT_DEBUG_CHANNEL(hnetcfg);
 
 typedef struct fw_manager
 {
-    const INetFwMgrVtbl *vtbl;
+    INetFwMgr INetFwMgr_iface;
     LONG refs;
 } fw_manager;
 
 static inline fw_manager *impl_from_INetFwMgr( INetFwMgr *iface )
 {
-    return (fw_manager *)((char *)iface - FIELD_OFFSET( fw_manager, vtbl ));
+    return CONTAINING_RECORD(iface, fw_manager, INetFwMgr_iface);
 }
 
 static ULONG WINAPI fw_manager_AddRef(
@@ -230,10 +230,10 @@ HRESULT NetFwMgr_create( IUnknown *pUnkOuter, LPVOID *ppObj )
     fm = HeapAlloc( GetProcessHeap(), 0, sizeof(*fm) );
     if (!fm) return E_OUTOFMEMORY;
 
-    fm->vtbl = &fw_manager_vtbl;
+    fm->INetFwMgr_iface.lpVtbl = &fw_manager_vtbl;
     fm->refs = 1;
 
-    *ppObj = &fm->vtbl;
+    *ppObj = &fm->INetFwMgr_iface;
 
     TRACE("returning iface %p\n", *ppObj);
     return S_OK;
-- 
1.7.2.3



More information about the wine-patches mailing list