http://bugs.winehq.org/show_bug.cgi?id=35236
Bug ID: 35236 Summary: Nitro PDF Reader 3 crashes on startup (preference for native 'msvcr100' forces unload of 'msvcrt' causing exception in builtin 'msvcp100' entry point) Product: Wine Version: 1.7.9 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: msvcp Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Classification: Unclassified
Hello folks,
as the summary says.
A side-effect of recent msvcpXXX refactoring: http://source.winehq.org/git/wine.git/commitdiff/6d30d6be78a49e1add6d8c78864...
Relevant part of trace log:
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files/Nitro/Reader 3
$ WINEDEBUG=+tid,+seh,+relay,+loaddll,+process,+module,+imports wine ./NitroPDFReader.exe >>trace.txt 2>&1 ... 002d:trace:module:load_dll looking for L"MSVCR100.dll" in L"C:\Program Files\Nitro\Reader 3;.;C:\windows\system32;C:\windows\system;C:\windows;C:\windows\system32;C:\windows;C:\windows\system32\wbem" 002d:trace:module:get_load_order looking for L"C:\windows\system32\MSVCR100.dll" 002d:trace:module:get_load_order got hardcoded default for L"MSVCR100.dll" 002d:trace:module:load_builtin_dll Trying built-in L"C:\windows\system32\MSVCR100.dll" ... 002d:trace:module:load_builtin_dll Trying built-in L"msvcrt.dll" ... 002d:trace:module:load_builtin_callback loaded msvcrt.dll 0x123280 0x7e240000 002d:trace:loaddll:load_builtin_dll Loaded L"C:\windows\system32\msvcrt.dll" at 0x7e240000: builtin 002d:trace:module:load_dll Loaded module L"C:\windows\system32\msvcrt.dll" (builtin) at 0x7e240000 ... 002d:trace:module:load_builtin_callback loaded msvcr100.dll 0x1231d0 0x7e2f0000 002d:trace:loaddll:load_builtin_dll Loaded L"C:\windows\system32\msvcr100.dll" at 0x7e2f0000: builtin 002d:Call PE DLL (proc=0x7e2f98dc,module=0x7e2f0000 L"msvcr100.dll",reason=WINE_PREATTACH,res=(nil)) 002d:Ret PE DLL (proc=0x7e2f98dc,module=0x7e2f0000 L"msvcr100.dll",reason=WINE_PREATTACH,res=(nil)) retval=0 002d:trace:module:load_dll L"C:\windows\system32\MSVCR100.dll" pre-attach returned FALSE, preferring native 002d:trace:module:LdrUnloadDll (0x7e2f0000) 002d:trace:module:LdrUnloadDll (L"msvcr100.dll") - START 002d:trace:module:MODULE_DecRefCount (L"msvcr100.dll") ldr.LoadCount: 0 002d:trace:module:MODULE_DecRefCount (L"msvcrt.dll") ldr.LoadCount: 0 002d:trace:module:MODULE_DecRefCount (L"KERNEL32.dll") ldr.LoadCount: 16 002d:trace:module:MODULE_DecRefCount (L"ntdll.dll") ldr.LoadCount: 12 002d:trace:module:MODULE_DecRefCount (L"KERNEL32.dll") ldr.LoadCount: 15 002d:trace:module:free_modref unloading L"C:\windows\system32\msvcrt.dll" 002d:trace:module:free_modref unloading L"C:\windows\system32\msvcr100.dll" 002d:trace:module:LdrUnloadDll END 002d:trace:module:load_native_dll Trying native dll L"C:\windows\system32\MSVCR100.dll" ... 002d:trace:loaddll:load_native_dll Loaded L"C:\windows\system32\MSVCR100.dll" at 0x78aa0000: native 002d:trace:module:load_dll Loaded module L"C:\windows\system32\MSVCR100.dll" (native) at 0x78aa0000 ... 002d:trace:module:load_dll looking for L"MSVCP100.dll" in L"C:\Program Files\Nitro\Reader 3;.;C:\windows\system32;C:\windows\system;C:\windows;C:\windows\system32;C:\windows;C:\windows\system32\wbem" 002d:trace:module:get_load_order looking for L"C:\windows\system32\MSVCP100.dll" 002d:trace:module:get_load_order got hardcoded default for L"MSVCP100.dll" 002d:trace:module:load_builtin_dll Trying built-in L"C:\windows\system32\MSVCP100.dll" ... 002d:trace:module:load_dll Found L"C:\windows\system32\MSVCR100.dll" for L"msvcr100.dll" at 0x78aa0000, count=4 ... 002d:trace:module:load_builtin_callback loaded msvcp100.dll 0x12cfb0 0x7de30000 002d:trace:loaddll:load_builtin_dll Loaded L"C:\windows\system32\msvcp100.dll" at 0x7de30000: builtin 002d:Call PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=WINE_PREATTACH,res=(nil)) 002d:Ret PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=WINE_PREATTACH,res=(nil)) retval=1 002d:trace:module:load_dll Loaded module L"C:\windows\system32\MSVCP100.dll" (builtin) at 0x7de30000 002d:trace:imports:import_dll --- ??1_Container_base12@std@@QAE@XZ MSVCP100.dll.154 = 0x7de35280 002d:trace:imports:import_dll --- ?_Xout_of_range@std@@YAXPBD@Z MSVCP100.dll.654 = 0x7de37650 002d:trace:imports:import_dll --- ?_Xlength_error@std@@YAXPBD@Z MSVCP100.dll.652 = 0x7de37620 002d:trace:imports:import_dll --- ?_Orphan_all@_Container_base0@std@@QAEXXZ MSVCP100.dll.593 = 0x7de372bc ... 002d:trace:module:process_attach (L"msvcp100.dll",0x1) - START 002d:Call PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=PROCESS_ATTACH,res=0x1) 002d:Call KERNEL32.GetModuleHandleA(7de9e0a8 "msvcrt.dll") ret=7de83224 002d:trace:module:LdrGetDllHandle L"msvcrt.dll" -> (nil) (load path L"C:\Program Files\Nitro\Reader 3;.;C:\windows\system32;C:\windows\system;C:\windows;C:\windows\system32;C:\windows;C:\windows\system32\wbem") 002d:Ret KERNEL32.GetModuleHandleA() retval=00000000 ret=7de83224 002d:Call KERNEL32.GetProcAddress(00000000,7de9e0b3 "??2@YAPAXI@Z") ret=7de8323f 002d:Ret KERNEL32.GetProcAddress() retval=00000000 ret=7de8323f 002d:Call KERNEL32.GetProcAddress(00000000,7de9e0c0 "??3@YAXPAX@Z") ret=7de8325f 002d:Ret KERNEL32.GetProcAddress() retval=00000000 ret=7de8325f 002d:Call KERNEL32.GetProcAddress(00000000,7de9e0d0 "?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z") ret=7de8327f 002d:Ret KERNEL32.GetProcAddress() retval=00000000 ret=7de8327f 002d:Call KERNEL32.InitializeCriticalSection(7def4120) ret=7de82d08 002d:Ret KERNEL32.InitializeCriticalSection() retval=00000001 ret=7de82d08 002d:Call KERNEL32.InitializeCriticalSection(7def4138) ret=7de82d08 002d:Ret KERNEL32.InitializeCriticalSection() retval=00000001 ret=7de82d08 002d:Call KERNEL32.InitializeCriticalSection(7def4150) ret=7de82d08 002d:Ret KERNEL32.InitializeCriticalSection() retval=00000001 ret=7de82d08 002d:Call KERNEL32.InitializeCriticalSection(7def4168) ret=7de82d08 002d:Ret KERNEL32.InitializeCriticalSection() retval=00000001 ret=7de82d08 002d:trace:seh:raise_exception code=c0000005 flags=0 addr=(nil) ip=00000000 tid=002d 002d:trace:seh:raise_exception info[0]=00000000 002d:trace:seh:raise_exception info[1]=00000000 002d:trace:seh:raise_exception eax=00000000 ebx=7ded4000 ecx=00000003 edx=7def3060 esi=017bfd50 edi=00000000 002d:trace:seh:raise_exception ebp=017bfc18 esp=017bfbec cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00210206 ... 002d:exception in PE entry point (proc=0x7de8df94,module=0x7de30000,reason=PROCESS_ATTACH,res=0x1) 002d:Ret PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=PROCESS_ATTACH,res=0x1) retval=0 002d:Call PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=PROCESS_DETACH,res=0x1) 002d:Ret PE DLL (proc=0x7de8df94,module=0x7de30000 L"msvcp100.dll",reason=PROCESS_DETACH,res=0x1) retval=1 002d:warn:module:process_attach Initialization of L"msvcp100.dll" failed --- snip ---
The initialization of builtin 'msvcr100.dll' which precedes 'msvcp100.dll' pulls in builtin 'msvcrt.dll'.
Because native 'MSVCR100' is preferred, builtins are unloaded again, also causing unload of 'msvcrt.dll' (native 'MSVCR100' has no load time binding to 'msvcrt.dll').
This has the consequence that there is no mapping of 'msvcrt.dll' at the time when PROCESS_ATTACH is sent to builtin 'msvcp100.dll'.
Any use of MSVC runtime at this point (allocators) will cause failure (exceptions in entry point).
$ sha1sum nitro_pdf_reader.exe bc1da512862a0d08193b20ea5339a7d2ef4a79f3 nitro_pdf_reader.exe
$ du -sh nitro_pdf_reader.exe 28M nitro_pdf_reader.exe
$ wine --version wine-1.7.9-183-g919e620
Regards
http://bugs.winehq.org/show_bug.cgi?id=35236
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://install.nitropdf.com | |/reader/en/nitro_pdf_reader | |.exe
http://bugs.winehq.org/show_bug.cgi?id=35236
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Nitro PDF Reader 3 crashes |Multiple applications |on startup (preference for |refuse to load or crash on |native 'msvcr100' forces |startup (Nitro PDF Reader |unload of 'msvcrt' causing |3, Mozilla Firefox) |exception in builtin |(exception in builtin |'msvcp100' entry point) |'msvcp100' entry point if | |'msvcrt' is not mapped)
--- Comment #1 from Anastasius Focht focht@gmx.net --- Hello folks,
it seems this affects many applications. Any Windows version of Firefox also refuses to start now, stating "Couldn't load XPCOM".
Refining summary.
Regards
http://bugs.winehq.org/show_bug.cgi?id=35236
--- Comment #2 from Austin English austinenglish@gmail.com --- (In reply to comment #1)
Hello folks,
it seems this affects many applications. Any Windows version of Firefox also refuses to start now, stating "Couldn't load XPCOM".
Refining summary.
Regards
Firefox 24 works in wine-1.7.9-68-gb8e9bbd now.
http://bugs.winehq.org/show_bug.cgi?id=35236
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |263a1448f96816120011b5a5855 | |929e24b7a4818 Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #3 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit http://source.winehq.org/git/wine.git/commitdiff/263a1448f96816120011b5a5855...
Thanks Alexandre
Regards
http://bugs.winehq.org/show_bug.cgi?id=35236
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |Nil.Choudhury@gmail.com
--- Comment #4 from Anastasius Focht focht@gmx.net --- *** Bug 35287 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=35236
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.10.
http://bugs.winehq.org/show_bug.cgi?id=35236
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dgerard@gmail.com
--- Comment #6 from Anastasius Focht focht@gmx.net --- *** Bug 35305 has been marked as a duplicate of this bug. ***