[PATCH 3/3] oleaut32: COM cleanup for internal loading structures
Andrew Eikum
aeikum at codeweavers.com
Wed May 8 15:12:49 CDT 2013
---
dlls/oleaut32/typelib.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index c6d2189..f13024e 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -2458,7 +2458,7 @@ static CRITICAL_SECTION cache_section = { &cache_section_debug, -1, 0, 0, 0, 0 }
typedef struct TLB_PEFile
{
- const IUnknownVtbl *lpvtbl;
+ IUnknown IUnknown_iface;
LONG refs;
HMODULE dll;
HRSRC typelib_resource;
@@ -2515,7 +2515,7 @@ static HRESULT TLB_PEFile_Open(LPCWSTR path, INT index, LPVOID *ppBase, DWORD *p
if (!This)
return E_OUTOFMEMORY;
- This->lpvtbl = &TLB_PEFile_Vtable;
+ This->IUnknown_iface.lpVtbl = &TLB_PEFile_Vtable;
This->refs = 1;
This->dll = NULL;
This->typelib_resource = NULL;
@@ -2540,7 +2540,7 @@ static HRESULT TLB_PEFile_Open(LPCWSTR path, INT index, LPVOID *ppBase, DWORD *p
{
*pdwTLBLength = SizeofResource(This->dll, This->typelib_resource);
*ppBase = This->typelib_base;
- *ppFile = (IUnknown *)&This->lpvtbl;
+ *ppFile = &This->IUnknown_iface;
return S_OK;
}
}
@@ -2550,13 +2550,13 @@ static HRESULT TLB_PEFile_Open(LPCWSTR path, INT index, LPVOID *ppBase, DWORD *p
hr = E_FAIL;
}
- TLB_PEFile_Release((IUnknown *)&This->lpvtbl);
+ TLB_PEFile_Release(&This->IUnknown_iface);
return hr;
}
typedef struct TLB_NEFile
{
- const IUnknownVtbl *lpvtbl;
+ IUnknown IUnknown_iface;
LONG refs;
LPVOID typelib_base;
} TLB_NEFile;
@@ -2738,7 +2738,7 @@ static HRESULT TLB_NEFile_Open(LPCWSTR path, INT index, LPVOID *ppBase, DWORD *p
This = heap_alloc(sizeof(TLB_NEFile));
if (!This) return E_OUTOFMEMORY;
- This->lpvtbl = &TLB_NEFile_Vtable;
+ This->IUnknown_iface.lpVtbl = &TLB_NEFile_Vtable;
This->refs = 1;
This->typelib_base = NULL;
@@ -2758,20 +2758,20 @@ static HRESULT TLB_NEFile_Open(LPCWSTR path, INT index, LPVOID *ppBase, DWORD *p
LZClose( lzfd );
*ppBase = This->typelib_base;
*pdwTLBLength = reslen;
- *ppFile = (IUnknown *)&This->lpvtbl;
+ *ppFile = &This->IUnknown_iface;
return S_OK;
}
}
}
if( lzfd >= 0) LZClose( lzfd );
- TLB_NEFile_Release((IUnknown *)&This->lpvtbl);
+ TLB_NEFile_Release(&This->IUnknown_iface);
return hr;
}
typedef struct TLB_Mapping
{
- const IUnknownVtbl *lpvtbl;
+ IUnknown IUnknown_iface;
LONG refs;
HANDLE file;
HANDLE mapping;
@@ -2828,7 +2828,7 @@ static HRESULT TLB_Mapping_Open(LPCWSTR path, LPVOID *ppBase, DWORD *pdwTLBLengt
if (!This)
return E_OUTOFMEMORY;
- This->lpvtbl = &TLB_Mapping_Vtable;
+ This->IUnknown_iface.lpVtbl = &TLB_Mapping_Vtable;
This->refs = 1;
This->file = INVALID_HANDLE_VALUE;
This->mapping = NULL;
@@ -2846,13 +2846,13 @@ static HRESULT TLB_Mapping_Open(LPCWSTR path, LPVOID *ppBase, DWORD *pdwTLBLengt
/* retrieve file size */
*pdwTLBLength = GetFileSize(This->file, NULL);
*ppBase = This->typelib_base;
- *ppFile = (IUnknown *)&This->lpvtbl;
+ *ppFile = &This->IUnknown_iface;
return S_OK;
}
}
}
- IUnknown_Release((IUnknown *)&This->lpvtbl);
+ IUnknown_Release(&This->IUnknown_iface);
return TYPE_E_CANTLOADLIBRARY;
}
--
1.8.2.2
More information about the wine-patches
mailing list