Shell32: Add Some Missing Ordinals

Robert Shearman rob at codeweavers.com
Sat Sep 4 06:59:11 CDT 2004


Hi,

Without this patch some nasty stack corruption occurs in IE due to it 
calling GetProcAddress(hShell32, 192) and getting what it thinks is 
SHUpdateImageW, but actually getting DllInstall.

Changelog:
- Add exports for missing ordinals 191-194.
- Stub for SHUpdateImageW.

-------------- next part --------------
? wine/dlls/shell32/debug.diff
Index: wine/dlls/shell32/shell32.spec
===================================================================
RCS file: /home/wine/wine/dlls/shell32/shell32.spec,v
retrieving revision 1.86
diff -u -p -r1.86 shell32.spec
--- wine/dlls/shell32/shell32.spec	31 Aug 2004 17:38:59 -0000	1.86
+++ wine/dlls/shell32/shell32.spec	4 Sep 2004 11:50:28 -0000
@@ -182,6 +182,10 @@
  188 stdcall ShellDDEInit(long)
  189 stdcall ILCreateFromPathA(str)
  190 stdcall ILCreateFromPathW(wstr)
+ 191 stub SHUpdateImageA
+ 192 stdcall SHUpdateImageW(wstr long long long)
+ 193 stub SHHandleUpdateImage
+ 194 stub SHCreatePropSheetExtArrayEx
  195 stdcall SHFree(ptr)
  196 stdcall SHAlloc(long)
  197 stub SHGlobalDefect
Index: wine/dlls/shell32/shellord.c
===================================================================
RCS file: /home/wine/wine/dlls/shell32/shellord.c,v
retrieving revision 1.125
diff -u -p -r1.125 shellord.c
--- wine/dlls/shell32/shellord.c	31 Aug 2004 17:38:59 -0000	1.125
+++ wine/dlls/shell32/shellord.c	4 Sep 2004 11:50:28 -0000
@@ -1524,3 +1524,24 @@ BOOL WINAPI SHFindFiles( LPCITEMIDLIST p
     FIXME("%p %p\n", pidlFolder, pidlSaveFile );
     return FALSE;
 }
+
+/*************************************************************************
+ *		SHUpdateImageW (SHELL32.192)
+ *
+ * Notifies the shell that an icon in the system image list has been changed.
+ *
+ * PARAMS
+ *  pszHashItem [I] Path to file that contains the icon.
+ *  iIndex      [I] Zero-based index of the icon in the file.
+ *  uFlags      [I] Flags determining the icon attributes. See notes.
+ *  iImageIndex [I] Index of the icon in the system image list.
+ *
+ * NOTES
+ *  uFlags can be one or more of the following flags:
+ *  GIL_NOTFILENAME - pszHashItem is not a file name.
+ *  GIL_SIMULATEDOC - Create a document icon using the specified icon.
+ */
+void WINAPI SHUpdateImageW(LPCWSTR pszHashItem, int iIndex, UINT uFlags, int iImageIndex)
+{
+    FIXME("%s, %d, 0x%x, %d\n", debugstr_w(pszHashItem), iIndex, uFlags, iImageIndex);
+}


More information about the wine-patches mailing list