[PATCH] oleaut32: ERR on 32bit typelibs on 64bit

Marcus Meissner meissner at suse.de
Fri Aug 2 02:57:37 CDT 2013


Triggered by the Novell Groupwise installer currently,
from the ISBE64W.exe Installshield Helper program.

The typelib is contained directly in ISBE64W.exe itself :/

Basically if we encounter this case the program will crash
anyway (but with random backtrace), so output an ERR().

Ciao, Marucs
---
 dlls/oleaut32/typelib.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index b52d467..fec886c 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -6617,6 +6617,10 @@ DispCallFunc(
 	FIXME("unsupported calling convention %d\n",cc);
         return E_INVALIDARG;
     }
+    if (oVft & 4) {
+	ERR("loaded a typelib that assumes 32bit pointers, not 64bit pointers? (oVft=%lx).\n",oVft);
+        return E_INVALIDARG;
+    }
 
     /* maximum size for an argument is sizeof(DWORD_PTR) */
     args = heap_alloc( sizeof(DWORD_PTR) * (cActuals + 2) );
-- 
1.8.3.1




More information about the wine-patches mailing list