http://bugs.winehq.org/show_bug.cgi?id=11896
Summary: Civilization4.exe crashes because of unimplemented function __iob_func Product: Wine Version: unspecified Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: msvcrt AssignedTo: wine-bugs@winehq.org ReportedBy: luis.busquets@ilidium.com
When using the wine version msvcr71.dll the program crashes because of unimplemented function __iob_func
http://bugs.winehq.org/show_bug.cgi?id=11896
dimaki@rocketmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #1 from dimaki@rocketmail.com 2008-03-31 23:23:31 --- *** This bug has been confirmed by popular vote. ***
http://bugs.winehq.org/show_bug.cgi?id=11896
dimaki@rocketmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dimaki@rocketmail.com
--- Comment #2 from dimaki@rocketmail.com 2008-03-31 23:25:42 --- Another program called Spiceworks IT Desktop Version 2.1 when ran in Wine crashes on startup with the same error
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #3 from Eric Pouech eric.pouech@orange.fr 2008-04-27 02:44:10 --- Created an attachment (id=12508) --> (http://bugs.winehq.org/attachment.cgi?id=12508) Tentative patch
this should at least get rid of the unimplemented function, but you may hit other issues
http://bugs.winehq.org/show_bug.cgi?id=11896
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #4 from Luis Busquets luis.busquets@ilidium.com 2008-06-27 15:50:01 --- Civilization 4 no longer askes for _iob_func but now it says that
wine: Call from 0x7b8432c0 to unimplemented function msvcr71.dll.___unguarded_readlc_active_add_func, aborting
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #5 from Luis Busquets luis.busquets@ilidium.com 2008-07-07 12:35:03 --- Created an attachment (id=14638) --> (http://bugs.winehq.org/attachment.cgi?id=14638) Patch to implement ___setlc_active_func/___unguarded_readlc_active_add_func
Patch submitted by Jon Griffiths on 6 Jul 19:46
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #6 from Luis Busquets luis.busquets@ilidium.com 2008-07-07 12:37:08 --- By applying the Patch to implement ___setlc_active_func/___unguarded_readlc_active_add_func Civ4 stops asking for msvcr71.dll.___unguarded_readlc_active_add_func
but now it askes for another function:
wine: Call from 0x7b842320 to unimplemented function msvcr71.dll.___lc_handle_func, aborting err:module:attach_process_dlls "MSVCP71.dll" failed to initialize, aborting
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #7 from Luis Busquets luis.busquets@ilidium.com 2008-07-07 13:29:25 --- Before going with tooo many posts. Let's wrap up. The problem is that msvcp71 need to map 93 msvcr71 functions. Probably Civ4 is not even using them but they are needed to load that dll. The following is the list of unimplemented stubs that msvcp71.dll needs to map.
1 @ stub _ungetwch 2 @ stub _strtoi64 3 @ stub _strtoui64 4 @ stub __uncaught_exception 5 @ stub ___lc_codepage_func 6 @ stub ___lc_handle_func 7 @ stub ___setlc_active_func 8 @ stub ___unguarded_readlc_active_add_func 9 @ stub ___lc_collate_cp_func 10 @ stub __crtGetStringTypeW 11 @ stub __crtLCMapStringW 12 @ stub __security_error_handler 13 @ stub ??0bad_cast@@QAE@PBD@Z 14 @ stub ___mb_cur_max_func
Probably Civilization4 does not any of them neither any msvcp71 function relying on them but since msvcp71.dll has them mapped, it needs to have somewhere to point to. Probably with just stubs is enough. I hope that helps someone to make a full patch to make msvcp71 work.
http://bugs.winehq.org/show_bug.cgi?id=11896
Luis Busquets luis.busquets@ilidium.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jon_p_griffiths@yahoo.com
http://bugs.winehq.org/show_bug.cgi?id=11896
Vijay Kamuju infyquest@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |infyquest@gmail.com Summary|Civilization4.exe crashes |Civilization4.exe crashes |because of unimplemented |because of unimplemented |function __iob_func |functions in msvcp71
--- Comment #8 from Vijay Kamuju infyquest@gmail.com 2008-07-08 10:07:23 --- Modifying the title of bug accordingly. Also i think you can add stubs for the corresponding *_func calls in msvcp71 similar to the patch for set_lc_active_func patch. as far as others are concerned we need implementations for them with tests
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #9 from Vijay Kamuju infyquest@gmail.com 2008-07-08 10:48:59 --- for str*64 functions in the list we can use the following functions in the implementation, but I dont know where to implement this whether in ntdll or msvcrt
strtoi64 -> strtoll strtoui64 -> strtoull
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #10 from Vijay Kamuju infyquest@gmail.com 2008-07-08 11:01:07 --- information __security_error_handler can be found here http://65.55.11.235/en-us/library/aa290051(VS.71).aspx
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #11 from Jon Griffiths jon_p_griffiths@yahoo.com 2008-07-08 18:09:02 --- (In reply to comment #7)
Before going with too many posts. Let's wrap up. The problem is that msvcp71 need to map 93 msvcr71 functions.
These 2 were added by commit a4037eb463651db652fa84dc7d5f73ef3e67440e.
7 @ stub ___setlc_active_func 8 @ stub ___unguarded_readlc_active_add_func
In case anyone else is working on these, I have patches for the following 2 functions which I should submit pretty shortly (they need to be cleaned up a bit/tested first):
5 @ stub ___lc_codepage_func 6 @ stub ___lc_handle_func
These should be pretty simple: ___mb_cur_max_func probably returns msvcrt.__mb_cur_max ___lc_collate_cp_func probably returns msvcrt.__lc_collate_cp ??0bad_cast@@QAE@PBD@Z is missing from msvcrt, it should be a stub there and then forwarded.
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #12 from Vijay Kamuju infyquest@gmail.com 2008-08-13 10:09:39 ---
In case anyone else is working on these, I have patches for the following 2 functions which I should submit pretty shortly (they need to be cleaned up a bit/tested first):
5 @ stub ___lc_codepage_func 6 @ stub ___lc_handle_func
In that case send them to wine-patches@winehq.org (for safe keeping) And also attach them here, so anyone interested can work on them
These should be pretty simple: ___mb_cur_max_func probably returns msvcrt.__mb_cur_max ___lc_collate_cp_func probably returns msvcrt.__lc_collate_cp ??0bad_cast@@QAE@PBD@Z is missing from msvcrt, it should be a stub there and then forwarded.
send some patches ;)
http://bugs.winehq.org/show_bug.cgi?id=11896
Valeriy Zamarayev valeriy.zamarayev@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |valeriy.zamarayev@gmail.com
--- Comment #13 from Valeriy Zamarayev valeriy.zamarayev@gmail.com 2009-01-15 07:38:35 --- (In reply to comment #11)
In case anyone else is working on these, I have patches for the following 2 functions which I should submit pretty shortly (they need to be cleaned up a bit/tested first):
5 @ stub ___lc_codepage_func 6 @ stub ___lc_handle_func
Well, I'm very interested in these patches, if you could post them here I'd appreciate this. Or just please send by email, thanks, no problem if the aren't very clean.
http://bugs.winehq.org/show_bug.cgi?id=11896
Ori Avtalion ori@avtalion.name changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ori@avtalion.name
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #14 from Austin English austinenglish@gmail.com 2009-08-05 10:16:06 --- Is this still an issue in current (1.1.26 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #15 from Luis Busquets luis.busquets@ilidium.com 2009-10-17 01:48:27 --- In wine 1.1.29 the issue is
function ?vswprintf@@YAHPAGIPBGPAD@Z
wine: Call from 0x7b842672 to unimplemented function msvcr71.dll.?vswprintf@@YAHPAGIPBGPAD@Z, aborting wine: Unimplemented function msvcr71.dll.?vswprintf@@YAHPAGIPBGPAD@Z called at address 0x7b842672 (thread 0009), starting debugger... Unhandled exception: unimplemented function msvcr71.dll.?vswprintf@@YAHPAGIPBGPAD@Z called in 32-bit code (0x7b842672).
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #16 from Luis Busquets luis.busquets@ilidium.com 2010-03-05 00:45:08 --- msvcr71 is no longer a problem but msvcp71.dll is. Now the problem is that actually there is not the msvcp71.dll implemented in wine.
http://bugs.winehq.org/show_bug.cgi?id=11896
Thomas kronisk@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kronisk@hotmail.com
--- Comment #17 from Thomas kronisk@hotmail.com 2010-04-05 09:48:35 --- Wine 1.1.42 has not fixed this:
I get the same error when trying to load the mod BUFFY (used for Hall of Fame games)
and produce the similar:
Backtrace: =>0 0x7c3428fa in msvcr71 (+0x28fa) (0x0ea7d5a0)
I can however use the mods that originally was installed with Civilization IV. I also tried winetricks vcrun2003 and it didn't help.
http://bugs.winehq.org/show_bug.cgi?id=11896
--- Comment #18 from Vijay Kamuju infyquest@gmail.com 2010-04-20 23:00:37 --- this is now implemented in 1.1.43
http://source.winehq.org/git/wine.git?a=commitdiff;h=6000b08ca7d6d59b2edafcb...
http://bugs.winehq.org/show_bug.cgi?id=11896
Jerome Leclanche adys.wh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |adys.wh@gmail.com
--- Comment #19 from Jerome Leclanche adys.wh@gmail.com 2010-05-08 09:39:38 --- (In reply to comment #18)
this is now implemented in 1.1.43
http://source.winehq.org/git/wine.git?a=commitdiff;h=6000b08ca7d6d59b2edafcb...
Fixed then?
http://bugs.winehq.org/show_bug.cgi?id=11896
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #20 from Vitaliy Margolen vitaliy@kievinfo.com 2010-05-08 12:01:31 --- Fixed
http://bugs.winehq.org/show_bug.cgi?id=11896
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #21 from Alexandre Julliard julliard@winehq.org 2010-05-21 14:38:36 --- Closing bugs fixed in 1.2-rc1.