http://bugs.winehq.org/show_bug.cgi?id=24250
Summary: Sam and Max 304 aborts on unimplemented function msvcr80.dll.getenv_s Product: Wine Version: 1.3.1 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: msvcrt AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
Created an attachment (id=30528) --> (http://bugs.winehq.org/attachment.cgi?id=30528) perl script to dig for imports of a particular dll in all modules in current directory tree
http://gamedaily.newaol.com/pub/SamMax304_BigDownload.exe.zip (sha1sum 5d3cefcf0c654d3646105e14cb3d06c61feb32f3 ) installs, but when you run it, it dies with
wine: Call from 0x7b836523 to unimplemented function msvcr80.dll.getenv_s, aborting
Using a little script to look for other possible problems:
perl imports.pl msvcr80.dll | sort -n -u | awk '/[0-9]/ {print $2}' | sort -u
syms
grep -wf syms ~/wine-git/dlls/msvcr80/*.spec | grep stub
yields
@ stub -arch=win32 ?_type_info_dtor_internal_method@type_info@@QAEXXZ # public: void __thiscall type_info::_type_info_dtor_internal_method(void) @ stub _crt_debugger_hook @ stub _fseeki64 @ stub _ftelli64 @ stub _get_tzname @ stub _localtime64_s @ stub _putenv_s @ stub _wassert @ stub getenv_s
Same analysis on msvcp80 yields
@ stub -arch=win32 ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBDI@Z @ stub -arch=win32 ??0?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@ABV01@@Z @ stub -arch=win32 ??0?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@XZ @ stub -arch=win32 ??1?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@XZ @ stub -arch=win32 ?begin@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE?AV?$_String_iterator@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ @ stub ?max@?$numeric_limits@I@std@@SAIXZ @ stub ?quiet_NaN@?$numeric_limits@N@std@@SANXZ @ stub -arch=win32 ?resize@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAEXI@Z @ stub ?uncaught_exception@std@@YA_NXZ @ stub _FInf @ stub _Inf @ stub _Nan
So that's 20 stubs max that might need to be dealt with, who knows which of them are really needed in normal operation.
http://bugs.winehq.org/show_bug.cgi?id=24250
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://gamedaily.newaol.com | |/pub/SamMax304_BigDownload. | |exe.zip
http://bugs.winehq.org/show_bug.cgi?id=24250
--- Comment #1 from Dan Kegel dank@kegel.com 2010-09-05 01:50:31 CDT --- Interestingly, about half those symbols are needed by Qt:
Beyond the Alley of the Dolls/QtWebKit4.dll imports following stub symbols: msvcp80:?max@?$numeric_limits@I@std@@SAIXZ msvcp80:?quiet_NaN@?$numeric_limits@N@std@@SANXZ msvcp80:_FInf msvcp80:_Inf msvcp80:_Nan
Beyond the Alley of the Dolls/QtCore4.dll imports following stub symbols: msvcr80:_fseeki64 msvcr80:_ftelli64 msvcr80:_get_tzname msvcr80:_localtime64_s msvcr80:_putenv_s msvcr80:_wassert msvcr80:getenv_s
Beyond the Alley of the Dolls/QtWebKit4.dll imports following stub symbols: msvcr80:_localtime64_s
Those same DLLs and similar imports are used by 3 out of 45 games tested just now (Sam and Max, Draftsight, & Everquest 2).
http://bugs.winehq.org/show_bug.cgi?id=24250
--- Comment #2 from Austin English austinenglish@gmail.com 2010-11-03 13:47:39 CDT --- Some relevant commits today: http://source.winehq.org/git/wine.git/?a=commitdiff;h=a3927b5e09b616f6c9f67b... http://source.winehq.org/git/wine.git/?a=commitdiff;h=356b2d2bc07aabf771908e...
Still needs: ./QtCore4.dll imports following stub symbols: msvcr80:_get_tzname msvcr80:_wassert msvcr80:getenv_s
from msvcr80.
http://bugs.winehq.org/show_bug.cgi?id=24250
Marcus Meissner marcus@jet.franken.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |marcus@jet.franken.de
--- Comment #3 from Marcus Meissner marcus@jet.franken.de 2010-11-20 08:16:19 CST --- _wassert is still missing, but getenv_s and _get_tzname are there now.
feel free to retest.
http://bugs.winehq.org/show_bug.cgi?id=24250
Phil Blankenship phillip.e.blankenship@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |phillip.e.blankenship@gmail | |.com
--- Comment #4 from Phil Blankenship phillip.e.blankenship@gmail.com 2011-03-02 17:40:37 CST --- I reproduced the problem in older versions of wine, made sure I could still work around the bug with winetricks vcrun2005, and verified that the crash does not occur in wine 1.3.14 with msvcr80 overridden to builtin only. So it looks like it's fixed.
http://bugs.winehq.org/show_bug.cgi?id=24250
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #5 from Dan Kegel dank@kegel.com 2011-03-02 17:41:17 CST --- Thanks for testing that!
http://bugs.winehq.org/show_bug.cgi?id=24250
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org 2011-03-04 12:35:45 CST --- Closing bugs fixed in 1.3.15.