http://bugs.winehq.org/show_bug.cgi?id=22410
Summary: Age Of Empires III: Initialization failed Product: Wine Version: 1.1.39 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: unmacaque@gmail.com
Created an attachment (id=27429) --> (http://bugs.winehq.org/attachment.cgi?id=27429) Terminal output of age3y.exe under 1.1.43
Starting with wine 1.1.39 and onwards, Age Of Empires III will not start anymore. When launching the game or any of its addons, a very uninformative "Initialization failed" message pops up right at the splash screen and the startup is aborted. The most recent version tested is 1.1.43 where the problem persists.
Prior versions to 1.1.38 do work without problem on the very same system. My OS is Ubuntu 9.10 64 bit. I don't know if it is related to this bug but with 1.1.38, the game would not start complaining that MSXML 4.0 was not installed although it was.
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #1 from Austin English austinenglish@gmail.com 2010-04-18 07:56:34 --- Regression test? http://wiki.winehq.org/RegressionTesting
http://bugs.winehq.org/show_bug.cgi?id=22410
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression Version|1.1.39 |1.1.43
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #2 from unmacaque@gmail.com 2010-04-18 14:50:53 --- (In reply to comment #1)
Regression test? http://wiki.winehq.org/RegressionTesting
Thanks, that instruction was very helpful. After having become familiar with it, I was able to pinpoint the cause for the error to this commit:
dd404487071ebcf0204520124f7910e8a1fd0c5d is first bad commit commit dd404487071ebcf0204520124f7910e8a1fd0c5d Author: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Sat Feb 13 22:59:18 2010 +1100
msxml4: Added support for SAXXMLReader40.
:040000 040000 63918f0199e5a7ad425d15664d67d91138253ad5 0ab2cb29670cde77c86795ea4b50f93a684f5ffc M dlls :040000 040000 5e4b8a0b4cdf175a3db25fea1ea2e0398f07e92a 2b8c635d1ee7100e51000487956feca68612d4d7 M include
I already expected it had something to do with MSXML. Reverting it does bring back the MSXML error at least. This appears to be harder to trace but I will also try it. So please note that this application will still not run regardless of the state of this bug.
http://bugs.winehq.org/show_bug.cgi?id=22410
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |leslie_alistair@hotmail.com Component|-unknown |msxml4
http://bugs.winehq.org/show_bug.cgi?id=22410
NSLW lukasz.wojnilowicz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lukasz.wojnilowicz@gmail.co | |m
--- Comment #3 from NSLW lukasz.wojnilowicz@gmail.com 2010-04-19 04:27:59 --- I can confirm that bug, but I would change it's severity to minor because there is an workaround for this. The workaround is to install msxml4 through winetricks.
I also think that Wine version should be changed to 1.1.39 as this is the first version on which this regression has occurred.
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #4 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-19 04:42:28 --- Can you please provide a log with +msxml3,+msxml4 on a clean WINEPREFIX?
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #5 from unmacaque@gmail.com 2010-04-19 06:50:00 --- Created an attachment (id=27455) --> (http://bugs.winehq.org/attachment.cgi?id=27455) 1.1.43 with +msxml debugging parameter
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #6 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-19 20:57:44 --- Thanks for the log.
Could you provide another log with +msxml,+urlmon?
StopBinding is reporting INET_E_RESOURCE_NOT_FOUND and this is an error from urlmon.
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #7 from unmacaque@gmail.com 2010-04-20 02:01:53 --- Created an attachment (id=27470) --> (http://bugs.winehq.org/attachment.cgi?id=27470) 1.1.43 with +msxml and +urlmon
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #8 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-20 06:44:00 --- The issue was the path used \ whereas urlmon was expecting //.
Patch sent http://www.winehq.org/pipermail/wine-patches/2010-April/087517.html
This gets the trial pass the "Initialization failed" failed message.
http://bugs.winehq.org/show_bug.cgi?id=22410
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED
--- Comment #9 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-20 17:27:47 --- Patch accepted http://source.winehq.org/git/wine.git/?a=commit;h=c79c84947955deb56b6b73f2c5...
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #10 from unmacaque@gmail.com 2010-04-21 05:53:33 --- Created an attachment (id=27490) --> (http://bugs.winehq.org/attachment.cgi?id=27490) wine-1.1.43-132-g7746136 with WINEDEBUG=+msxml,+urlmon; shortened to last 300 lines
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #11 from unmacaque@gmail.com 2010-04-21 05:54:23 --- So, I have tested the latest git and the 'Initialization failed' message is gone but the game will still not start saying that it encountered a problem and needs to close.
With WINEDEBUG=+msxml,+urlmon, a log file gets as big as 40 MB due to lines like these taking up a huge space, the addresses vary:
trace:msxml:SAXAttributes_create returning 0x197770 trace:msxml:isaxattributes_getLength Length set to 1 trace:msxml:isaxattributes_getLocalName (0x197770)->(0) trace:msxml:isaxattributes_getValue (0x197770)->(0) trace:msxml:isaxattributes_Release 0x197770
I have attachted a log of the last 300 lines, they may be containing relevant information about that behaviour.
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #12 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-21 06:30:35 --- If you feel that is not fixed, feel free to reopen the bug.
From your log the, something went wrong reading the XML file.
Try this patch, and post back just the error message.
diff --git a/dlls/msxml3/saxreader.c b/dlls/msxml3/saxreader.c index a3de757..68d51bb 100644 --- a/dlls/msxml3/saxreader.c +++ b/dlls/msxml3/saxreader.c @@ -1314,6 +1314,8 @@ static void libxmlFatalError(void *ctx, const char *msg, . vsprintf(message, msg, args); va_end(args);
+ FIXME("SAX error %s.\n", message); + len = MultiByteToWideChar(CP_UNIXCP, 0, message, -1, NULL, 0); wszError = heap_alloc(sizeof(WCHAR)*len); if(wszError)
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #13 from unmacaque@gmail.com 2010-04-21 12:40:44 --- Thanks, this patch got little further. When the application tried to read randomnamesy.xml, Wine printed the following error message:
fixme:msxml:libxmlFatalError SAX error Document labelled UTF-16 but has UTF-8 content
Correcting the faulty encoding does silence the above message and seems to get rid of 'initialization failed' message, so I am undetermined to reopen this bug yet. The wrong encoding may have been due to an update of the game. Curiously, older Wine versions or real Windows systems have no problem with that.
Now, there is still a page fault preventing the application to start up. I have attached yet another log.
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #14 from unmacaque@gmail.com 2010-04-21 12:41:24 --- Created an attachment (id=27497) --> (http://bugs.winehq.org/attachment.cgi?id=27497) wine-1.1.43-132-g7746136, no debug parameter
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #15 from Alistair Leslie-Hughes leslie_alistair@hotmail.com 2010-04-23 05:51:28 --- This latest exceptions is to be caused
saxreader.c:1264 while(memcmp(beg-4, "<!--", sizeof(char[4]))) beg--;
and at a guess "<!--" is never found, and then buffer under runs.
If you change the function to look like below, does it get any further? static void libxmlComment(void *ctx, const xmlChar *value) { saxlocator *This = ctx; update_position(This, NULL); }
http://bugs.winehq.org/show_bug.cgi?id=22410
--- Comment #16 from unmacaque@gmail.com 2010-04-23 08:15:59 --- This patch fixes the unhandled page fault, thank you.
Also, a litte earlier I made a mistake when converting the .xml files to the correct encoding. I have used 'recode' now and the "Initialization failed" is finally gone. As for the game, well, it still does not work properly due to an entirely different problem but it is good to know that this problem has been sorted out now. Thanks for your attention.
http://bugs.winehq.org/show_bug.cgi?id=22410
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #17 from Alexandre Julliard julliard@winehq.org 2010-05-07 13:30:25 --- Closing bugs fixed in 1.1.44.