shell32: Fixup IShellItemArray_Constructor helper.

David Hedberg david.hedberg at gmail.com
Thu Jul 29 14:41:06 CDT 2010


Remove unnecessary WINAPI keyword and initialize array and item_count
to fix (likely) crash when passed an invalid riid.

Try 2 of "shell32: Initialize memory to zero in IShellItemArray constructor".
---
 dlls/shell32/shellitem.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/shell32/shellitem.c b/dlls/shell32/shellitem.c
index 5b01262..dbf9b4d 100644
--- a/dlls/shell32/shellitem.c
+++ b/dlls/shell32/shellitem.c
@@ -755,7 +755,7 @@ static const IShellItemArrayVtbl vt_IShellItemArray = {
     IShellItemArray_fnEnumItems
 };
 
-static HRESULT WINAPI IShellItemArray_Constructor(IUnknown *pUnkOuter, REFIID riid, void **ppv)
+static HRESULT IShellItemArray_Constructor(IUnknown *pUnkOuter, REFIID riid, void **ppv)
 {
     IShellItemArrayImpl *This;
     HRESULT ret;
@@ -771,6 +771,8 @@ static HRESULT WINAPI IShellItemArray_Constructor(IUnknown *pUnkOuter, REFIID ri
 
     This->ref = 1;
     This->lpVtbl = &vt_IShellItemArray;
+    This->array = NULL;
+    This->item_count = 0;
 
     ret = IShellItemArray_QueryInterface((IShellItemArray*)This, riid, ppv);
     IShellItemArray_Release((IShellItemArray*)This);
-- 
1.7.2




More information about the wine-patches mailing list