http://bugs.winehq.org/show_bug.cgi?id=20311
Summary: Blitzkrieg game crashes when selecting 'Allies campaign' Product: Wine Version: 1.1.31 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: pawel.stolowski@wp.pl
Created an attachment (id=24016) --> (http://bugs.winehq.org/attachment.cgi?id=24016) Console output when running Blitzkrieg.
Blitzkrieg game silently crashes when selecting 'Allies campaign' from the main menu, but starts fine when German or Russian campaigns are selected. When a campaign is selected, an intro movie (BIK movie) is displayed, an then a mission briefing.
The problem is not related to BIK movies, because I removed them from Data/Movies directory and Allies campaign still doesn't work.
Attached is console output when running Blitzkrieg. It looks the same no matter what campaign was selected.
http://bugs.winehq.org/show_bug.cgi?id=20311
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
--- Comment #1 from Jeff Zaroyko jeffz@jeffz.name 2009-10-10 17:54:09 --- Does this app work in an older version of Wine? The AppDB suggests it did. Please post the results of your regression test http://wiki.winehq.org/RegressionTesting
http://bugs.winehq.org/show_bug.cgi?id=20311
Pawel Stolowski pawel.stolowski@wp.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #24016|0 |1 is obsolete| |
--- Comment #2 from Pawel Stolowski pawel.stolowski@wp.pl 2009-10-11 14:21:43 --- Created an attachment (id=24036) --> (http://bugs.winehq.org/attachment.cgi?id=24036) Console output when running Blitzkrieg with WINEDEBUG=+msxml
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #3 from Pawel Stolowski pawel.stolowski@wp.pl 2009-10-11 14:25:04 --- I've realized that the problem may be connected with msxml library. I've been using a "native" override, so I've just removed the override and run the game wine +msxml trace enabled. Synopsis of this bug is still valid: Allies campaign crashes wine; German and Russian campaigns work when using builtin mxsml.
I'll try and do regression tests, but this will take some more time.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #4 from Pawel Stolowski pawel.stolowski@wp.pl 2009-10-11 15:17:53 --- I've tried wine-1.1.22 (suggested as working) and wine-1.1.20, but it didn't work. Console output indicates error in xml parsing (msxml).
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #5 from Pawel Stolowski pawel.stolowski@wp.pl 2009-10-17 11:18:22 --- As far as I can tell, all xml files distributed with the game are valid. Blitzkrieg .pak files are just zip archives; I've unpacked them and verified all xml files with xmllint this way:
find ./ -name "*xml" -exec xmllint --noout {} ;
No problems were reported.
I'll try to find out what particual xml file is causing trouble to msxml.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #6 from Pawel Stolowski pawel.stolowski@wp.pl 2009-11-08 03:59:51 --- OK, I've spotted the xml file which crashes Allies campaign: this is Run/Data/scenarios/chapters/allies/norway/1.xml located in the game folder (not in a .pak file).
This file is created on campaign startup and is always empty (size=0). If I remove this file before running Blitzkrieg, then Allies campaign can be started, however an empty file 1.xml file is recreated and next time the game crashes. So, the workaround is to remove this file each time before running Blitzkrieg. The question is why is this file empty and if it has any side effects on gameplay.
What is interesting, an empty 1.xml file is also created for German and Russian campaigns (in Run/Data/scenarios/chapters/german/poland/1.xml and Run/Data/scenarios/chapters/ussr/finland/1.xml respecitvely) but it doesn't cause any trouble, i.e. the game can be started with this file present (no need to remove it beforehead).
So, only Allies campaign is affected by this problem.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #7 from Pawel Stolowski pawel.stolowski@wp.pl 2010-04-04 15:07:47 --- This is still a problem with wine-1.1.42.
I can also confirm that the bug is definately in builtin msxml. With native msxml3 the game works fine: when new Allies campaign is started and then I quit the game, a Data/scenarios/chapters/allies/norway/1.xml is created but it is not empty and the game can succesfuly be run again.
http://bugs.winehq.org/show_bug.cgi?id=20311
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wylda@volny.cz
--- Comment #8 from Wylda wylda@volny.cz 2010-04-10 22:59:57 ---
Confirming, crashes when 'Allied campaign' is selected, but i'm not sure, if this is xml issue, because it worked for me after clean installation under wine-1.1.42-182-g8f77dd8. When i finished first Allied this mission and quit the game, i could not enter into 'Allied campaign' again. "winetricks msxml3" does not help (all the xml parsing console errors gone, but crashes anyway).
Relation with clean installation of the game and wine?
Why this is marked as a regression??
http://bugs.winehq.org/show_bug.cgi?id=20311
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #9 from Austin English austinenglish@gmail.com 2010-04-11 12:08:22 --- Confirming.
http://bugs.winehq.org/show_bug.cgi?id=20311
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|regression | Component|-unknown |msxml3
--- Comment #10 from Wylda wylda@volny.cz 2010-06-19 09:26:58 ---
The problem here is, when the campain is selected, it creates files 1.xml under:
~/.wine/drive_c/Program Files/Nival Interactive/Blitzkrieg/Run/data/scenarios/chapters/allies/norway/
and this file has zero size. So when the game is run next time, it fails on parsing this xml.
When first run (zero size 1.xml created) console says a lot of time:
fixme:msxml:support_error_InterfaceSupportsErrorInfo (0x259dcb8)->({2933bf81-7b36-11d2-b20e-00c04f983e60})
fixme:msxml:support_error_InterfaceSupportsErrorInfo (0x276e9a8)->({2933bf81-7b36-11d2-b20e-00c04f983e60})
There are two workarounds: * delete 1.xml and run the game again * use "winetricks msxml3" creates 1.xml correctly and no xml output
Removing regression keyword, as there is no working versions before (tried 1.0.1, 1.1.10, 1.1.20, 1.1.30, 1.2-rc4)
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #11 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 09:33:00 --- Could you get a +msxml log when it's supposed to create this file?
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #12 from Wylda wylda@volny.cz 2010-06-19 09:46:16 --- Created an attachment (id=28961) --> (http://bugs.winehq.org/attachment.cgi?id=28961) console log from wine-1.2-rc4 +msxml
(In reply to comment #11)
Could you get a +msxml log when it's supposed to create this file?
Hi Nikolay, log attached as requested.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #13 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 10:39:35 --- Created an attachment (id=28965) --> (http://bugs.winehq.org/attachment.cgi?id=28965) patch
Thanks, and another one please with this patch.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #14 from Wylda wylda@volny.cz 2010-06-19 11:09:00 --- Created an attachment (id=28966) --> (http://bugs.winehq.org/attachment.cgi?id=28966) patched console log from wine-1.2-rc4 +msxml
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #15 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 12:36:33 --- Created an attachment (id=28969) --> (http://bugs.winehq.org/attachment.cgi?id=28969) patch: try ISequentialStream to save document data
Ok, thanks for log. Try this patch, now with some functional changes.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #16 from Wylda wylda@volny.cz 2010-06-19 13:14:18 ---
Nikolay, unfortunately wine won't compile with your patch. This is the err:
gcc -c -I. -I. -I../../include -I../../include -I/usr/include/libxml2 -I/usr/include/libxml2 -D__WINESRC__ -DCOM_NO_WINDOWS_H -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -g -O0 -o domdoc.o domdoc.c
domdoc.c:1761:93: error: macro "ISequentialStream_Write" requires 4 arguments, but only 3 given
domdoc.c: In function ‘domdoc_save’:
domdoc.c:1761: error: ‘ISequentialStream_Write’ undeclared (first use in this function)
domdoc.c:1761: error: (Each undeclared identifier is reported only once
domdoc.c:1761: error: for each function it appears in.) make[1]: *** [domdoc.o] Error 1 make[1]: Leaving directory `/home/pavel/install/wine/wine-git_build/dlls/msxml3' make: *** [dlls/msxml3] Error 2
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28969|0 |1 is obsolete| |
--- Comment #17 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 13:19:09 --- Created an attachment (id=28973) --> (http://bugs.winehq.org/attachment.cgi?id=28973) patch: try ISequentialStream to save document data (try2)
Sorry, my fault.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #18 from Wylda wylda@volny.cz 2010-06-19 14:15:31 --- Created an attachment (id=28975) --> (http://bugs.winehq.org/attachment.cgi?id=28975) patched by try2 - console log from wine-1.2-rc4 +msxml
Thanks, but created 1.xml still has zero size, when builtin msxml3 is used.
Adding the +msxml trace with your last patch.
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28973|0 |1 is obsolete| |
--- Comment #19 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 15:11:15 --- Created an attachment (id=28976) --> (http://bugs.winehq.org/attachment.cgi?id=28976) patch, check what interface it does support
It was a blind try actually, let's see what interface it wants to save with. No need for full log, the only relevant part is from:
--- trace:msxml:domdoc_save (0x25b4ed0)->(var(vt 13)) ---
to
--- trace:msxml:domdoc_save ret 0x80004002 ---
So you could paste.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #20 from Wylda wylda@volny.cz 2010-06-19 15:36:29 --- Created an attachment (id=28978) --> (http://bugs.winehq.org/attachment.cgi?id=28978) patched #04 - console log from wine-1.2-rc4 +msxml
I know, i know you told me to paste, but i could not find "save ret" anywhere. So i gave up and attached as usually.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #21 from Juan Lang juan_lang@yahoo.com 2010-06-19 15:42:39 --- (In reply to comment #20)
I know, i know you told me to paste, but i could not find "save ret" anywhere.
He forgot about the "return S_OK". He was looking for this: trace:msxml:domdoc_save IStream
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28976|0 |1 is obsolete| |
--- Comment #22 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 15:53:04 --- Created an attachment (id=28979) --> (http://bugs.winehq.org/attachment.cgi?id=28979) patch: save to IStream if it's supported
He forgot about the "return S_OK". He was looking for this: trace:msxml:domdoc_save IStream
Yeah, attached previous try actually. Try this one, it should really write something to file this time.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #23 from Wylda wylda@volny.cz 2010-06-19 16:23:12 --- Created an attachment (id=28982) --> (http://bugs.winehq.org/attachment.cgi?id=28982) native 1.xml
Partial success :-) The xml file is created, but the size is twice as big compared to native msxml3. Looks like the file is recoded to UNICODE.
And when the game stores other things to xml, which are damaged by this, the games won't start next time (i.e. reinstall or delete of all config is needed).
To let you see, i attached native vs builtin 1.xml. Do you also want the +xml log or is no longer needed?
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #24 from Wylda wylda@volny.cz 2010-06-19 16:23:41 --- Created an attachment (id=28983) --> (http://bugs.winehq.org/attachment.cgi?id=28983) builtin 1.xml
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28979|0 |1 is obsolete| |
--- Comment #25 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 17:13:19 --- Created an attachment (id=28986) --> (http://bugs.winehq.org/attachment.cgi?id=28986) patch: save to IStream with libxml2 callback
Yes, with previous patch it's always saved as UTF-16 stream. Let's give it another chance with this one - it will save a document with libxml2 I/O, as we do for files.
P.S. and yes, no need for new logs.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #26 from Wylda wylda@volny.cz 2010-06-19 17:37:42 ---
Perfect :-D Game can be repeatedly run without winetricks msxml3 or deleting 1.xml file. Thank you for your patient work, Nikolay.
I don't know if this is important, but won't hurt me if i mention, that i did binary comparison of the 1.xml created by native and builtin, because of checksum differes.
I find out, that native is 2bytes longer then builtin, because native writes 0x0D 0x0A, but builtin 0x0A in two cases. I don't know if that is intentional (unix) or wine should be trying to create exactly the same XML document like on Windows environment.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #27 from Nikolay Sivov bunglehead@gmail.com 2010-06-19 18:05:36 --- (In reply to comment #26)
I don't know if this is important, but won't hurt me if i mention, that i did binary comparison of the 1.xml created by native and builtin, because of checksum differes.
I find out, that native is 2bytes longer then builtin, because native writes 0x0D 0x0A, but builtin 0x0A in two cases. I don't know if that is intentional (unix) or wine should be trying to create exactly the same XML document like on Windows environment.
Yes, that's a known problem. For getting node text we have an ugly stream fixing logic that changes \n to \n\r. But it's not a way we need, and libxml2 doesn't provide a switch to enable MS kind of line ends (which is fine cause nobody should care). Anyway it's fine to write as is if we're going to read with our builtin msxml3 after that, but ideally we want exactly the same output files of course (a rewritten serializing from libxml2 needed for that I think which is not possible without a massive code duplication or without using some private API calls).
http://bugs.winehq.org/show_bug.cgi?id=20311
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kennybobs@o2.co.uk
--- Comment #28 from Nikolay Sivov bunglehead@gmail.com 2010-06-20 12:18:52 --- *** Bug 16546 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #29 from Ken Sharp kennybobs@o2.co.uk 2010-06-20 12:58:47 --- Could someone update the title of this bug to reflect what the problem actually is? Other apps unrelated to Blitzkrieg are affected. Thanks.
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Blitzkrieg game crashes |Blitzkrieg game crashes |when selecting 'Allies |when selecting 'Allies |campaign' |campaign' (failed to save | |document to IStream)
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #30 from Wylda wylda@volny.cz 2010-08-29 00:39:07 CDT ---
Hi Nikolay, is there a problem with the XML patch? So much collective effort done around this and wine-1.3.1-267-g7ab48e8 still creates zero size XML files.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #31 from Wylda wylda@volny.cz 2010-09-03 16:41:31 CDT ---
Still present in wine-1.3.2.
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #32 from Nikolay Sivov bunglehead@gmail.com 2010-10-21 15:31:03 CDT --- Wylda, this is most likely fixed by 657f64dd064cab9ee4b17867052aee61f668bd46. Please try again with today git version (wine-1.3.5-168-gd4e8f30).
At least saving to IStream with proper encoding should work fine.
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28986|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=20311
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28965|0 |1 is obsolete| |
http://bugs.winehq.org/show_bug.cgi?id=20311
--- Comment #33 from Nikolay Sivov bunglehead@gmail.com 2010-10-29 17:27:18 CDT --- Retest with 1.3.6 please. If still fails attach +msxml,+tid please.
http://bugs.winehq.org/show_bug.cgi?id=20311
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #34 from Wylda wylda@volny.cz 2010-12-11 14:45:22 CST --- (In reply to comment #33)
Retest with 1.3.6 please. If still fails attach +msxml,+tid please.
Sorry Nikolay for delay. Currently i have more then 10000 unread mails so i miss a lot of things.
1.3.5 ~ creates zero size XML 1.3.6 & 1.3.9 ~ XML has two byte less than WinXP's. That because of 0x0A vs 0x0D 0x0A in two places.
But the game works as expected, marking fixed and thank you for hard work.
http://bugs.winehq.org/show_bug.cgi?id=20311
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #35 from Alexandre Julliard julliard@winehq.org 2010-12-24 13:12:50 CST --- Closing bugs fixed in 1.3.10.