CommonUnimpStub looping

Robert Shearman rob at codeweavers.com
Sun Aug 29 07:26:37 CDT 2004


Stefan Leichter wrote:

>Hello,
>
>trying to install ie6 on current wine gives me an endless loop with function 
>calls to CommonUnimpStub().
>
>I started with .wine and dirve_c created by wine and installed dcom98, vc c++ 
>runtime, vb 5 + 6 Runtime
>
>What i found so far is that it happens when the iebatch.exe gets started. The 
>call the DllMain of the gdi32.dll never returns.
>
>In the traces i can see:
>
>0016:Call PE DLL (proc=0x4080e5a4,module=0x40800000 
>L"gdi32.dll",reason=PROCESS_ATTACH,res=0x1)
>
>but a line like 
>
>0016:Ret  PE DLL (proc=0x409b15a4,module=0x409a0000 
>L"gdi32.dll",reason=PROCESS_ATTACH,res=0x1) retval=1
>
>is not inside the log file.
>
>Any tips to get around this problem ?
>  
>

Use the attached patch and run with warn+module.

Rob

Changelog:
Warn when GetProcAddress fails.

-------------- next part --------------
Index: wine/dlls/kernel/module.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/module.c,v
retrieving revision 1.9
diff -u -p -r1.9 module.c
--- wine/dlls/kernel/module.c	3 Jun 2004 00:25:08 -0000	1.9
+++ wine/dlls/kernel/module.c	29 Aug 2004 12:23:26 -0000
@@ -818,6 +818,7 @@ FARPROC WINAPI GetProcAddress( HMODULE h
         nts = LdrGetProcedureAddress( hModule, NULL, (DWORD)function, (void**)&fp );
     if (nts != STATUS_SUCCESS)
     {
+        WARN("Function %s in module %p could not be found\n", debugstr_a(function), hModule);
         SetLastError( RtlNtStatusToDosError( nts ) );
         fp = NULL;
     }


More information about the wine-patches mailing list