WineHQ
Bug Tracking Database – Bug 25248

 Bugzilla

 

Last modified: 2013-12-20 12:43:43 UTC  

Brothers in Arms Road to Hill Demo needs msvcr71.__security_error_handler

Bug 25248 - Brothers in Arms Road to Hill Demo needs msvcr71.__security_error_handler
Brothers in Arms Road to Hill Demo needs msvcr71.__security_error_handler
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: msvcrt
1.3.7
x86 Linux
: P2 minor
: ---
Assigned To: Mr. Bugs
http://games.softpedia.com/progDownlo...
: download
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2010-11-21 12:57 UTC by Xavier Vachon
Modified: 2013-12-20 12:43 UTC (History)
4 users (show)

See Also:
Regression SHA1:
Fixed by SHA1: e3592d041a42f4e8365825ab3dab5c2addbe1fc0
Distribution: ---
Staged patchset:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Xavier Vachon 2010-11-21 12:57:58 UTC
The game bundles a bunch of vcrun2003 librairies.

xavier@xavier /wine/bia/drive_c $ perl mscodescan.pl 
Found 13 bundled MS modules:
  ./jeu/System/msvcp71.dll
  ./jeu/System/msvci70.dll
  ./jeu/System/dbghelp.dll
  ./jeu/System/msvci70d.dll
  ./jeu/System/MSVCR70.dll
  ./jeu/System/msvcirt.dll
  ./jeu/System/MSVCR70d.dll
  ./jeu/System/msvcp70d.dll
  ./jeu/System/MSVCRt.dll
  ./jeu/System/MSVCR71d.dll
  ./jeu/System/MSVCR71.dll
  ./jeu/System/msvcp71d.dll
  ./jeu/System/msvcp70.dll

When I remove them from the game directory, the game fails to load.

xavier@xavier /wine/bia/drive_c/jeu/System $ wine bia.exe
err:module:import_dll Library MSVCI70.dll (which is needed by L"C:\\jeu\\System\\Engine.dll") not found
err:module:import_dll Library MSVCP71.dll (which is needed by L"C:\\jeu\\System\\Engine.dll") not found
err:module:import_dll Library Engine.dll (which is needed by L"C:\\jeu\\System\\editor.dll") not found
err:module:import_dll Library MSVCP71.dll (which is needed by L"C:\\jeu\\System\\editor.dll") not found
err:module:import_dll Library editor.dll (which is needed by L"C:\\jeu\\System\\bia.exe") not found
err:module:import_dll Library MSVCI70.dll (which is needed by L"C:\\jeu\\System\\engine.dll") not found
err:module:import_dll Library MSVCP71.dll (which is needed by L"C:\\jeu\\System\\engine.dll") not found
err:module:import_dll Library engine.dll (which is needed by L"C:\\jeu\\System\\bia.exe") not found
err:module:import_dll Library MSVCI70.dll (which is needed by L"C:\\jeu\\System\\Engine.dll") not found
err:module:import_dll Library MSVCP71.dll (which is needed by L"C:\\jeu\\System\\Engine.dll") not found
err:module:import_dll Library Engine.dll (which is needed by L"C:\\jeu\\System\\window.dll") not found
err:module:import_dll Library window.dll (which is needed by L"C:\\jeu\\System\\bia.exe") not found
err:module:import_dll Library MSVCI70.dll (which is needed by L"C:\\jeu\\System\\engine.dll") not found
err:module:import_dll Library MSVCP71.dll (which is needed by L"C:\\jeu\\System\\engine.dll") not found
err:module:import_dll Library engine.dll (which is needed by L"C:\\jeu\\System\\bia.exe") not found

winetricks vcrun2003 is not a workaround, it does not add all the required libs.
Comment 1 Dan Kegel 2010-11-21 15:10:52 UTC
Heh.  They shouldn't have shipped msvc*70d.

msvci70.dll is the "old", prestandard c++ library, for what it's worth.
(Kind of weird that it uses both msvci and msvcp.)

How many routines does it need from all those msvc* libraries, according to
mscodescan.pl?
Comment 2 Xavier Vachon 2010-11-21 15:24:44 UTC
msvcr71:__security_error_handler

rpcrt4:NdrServerCall
Comment 3 Anastasius Focht 2011-05-01 11:22:55 UTC
Hello,

what kind of meta-bug is this?
Please make it one problem...

Adding link to demo version.

Whoever bundled the game was probably drunk.
The only library that pulls a "debug" version of CRT -> MSVCR71D.dll is xerces-c_2_5_0d.dll
That debug library version isn't loaded anyway - probably some leftover from development.
All the other debug versions of CRT are uselessly bundled, they get neither load time nor late binding referenced.

If the xerces-c_2_5_0d.dll crap is left out, it basically boils down to following:

--- snip ---
Found 2 bundled MS modules:
  ./msvci70.dll
  ./msvcp71.dll

./GameService.dll imports following stub symbols:
  msvcr71:__security_error_handler

./xerces-c_2_5_0d.dll imports following stub symbols:
  msvcr71:__security_error_handler

./Core.dll imports following stub symbols:
  msvcr71:__security_error_handler

./GameService.dll imports following stub symbols:
  rpcrt4:NdrServerCall
--- snip ---

Taking msvcr71.__security_error_handler for this bug.
When you slay it, you might also fix msvcr70.__security_error_handler. 

$ wine --version
wine-1.3.19

$ sha1sum BIA_PC_Demo.zip 
16ae8888a80c92a6213e25b70682846f7439fab6  BIA_PC_Demo.zip

Regards
Comment 4 Anastasius Focht 2011-05-01 11:51:54 UTC
*** Bug 24937 has been marked as a duplicate of this bug. ***
Comment 5 Xavier Vachon 2013-01-16 17:53:29 UTC
msvcr71:__security_error_handler is not implemented in wine 1.5.21.
Comment 6 Piotr Caban 2013-10-28 05:08:24 UTC
The __security_error_handler function is implemented (commit e3592d041a42f4e8365825ab3dab5c2addbe1fc0).
Comment 7 Andrey Gusev 2013-12-10 05:36:04 UTC
Confirming. Now it works in 1.7.8
Comment 8 Bruno Jesus 2013-12-10 06:24:38 UTC
(In reply to comment #7)
> Confirming. Now it works in 1.7.8

Fixed, thanks for testing.
Comment 9 Alexandre Julliard 2013-12-20 12:43:43 UTC
Closing bugs fixed in 1.7.9.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers