[Bug 35236] New: Nitro PDF Reader 3 crashes on startup (preference for native 'msvcr100' forces unload of 'msvcrt' causing exception in builtin 'msvcp100' entry point)
wine-bugs at winehq.org
wine-bugs at winehq.org
Thu Dec 26 15:14:33 CST 2013
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 at winehq.org
Reporter: focht at 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/6d30d6be78a49e1add6d8c7886484a2ceb950c71
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 at std@@QAE at XZ
MSVCP100.dll.154 = 0x7de35280
002d:trace:imports:import_dll --- ?_Xout_of_range at std@@YAXPBD at Z
MSVCP100.dll.654 = 0x7de37650
002d:trace:imports:import_dll --- ?_Xlength_error at std@@YAXPBD at Z
MSVCP100.dll.652 = 0x7de37620
002d:trace:imports:import_dll --- ?_Orphan_all at _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 at YAPAXI@Z")
ret=7de8323f
002d:Ret KERNEL32.GetProcAddress() retval=00000000 ret=7de8323f
002d:Call KERNEL32.GetProcAddress(00000000,7de9e0c0 "??3 at YAXPAX@Z")
ret=7de8325f
002d:Ret KERNEL32.GetProcAddress() retval=00000000 ret=7de8325f
002d:Call KERNEL32.GetProcAddress(00000000,7de9e0d0
"?_set_new_handler@@YAP6AHI at ZP6AHI@Z at 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
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list