https://bugs.winehq.org/show_bug.cgi?id=49659
Bug ID: 49659 Summary: A program dump dialog occurs when launching Mahjong Titans using version 5.14 of Wine. Appears to be a regression in msdmo.dll. Product: Wine Version: 5.14 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: craigaschulstad@gmail.com Distribution: ---
Created attachment 67896 --> https://bugs.winehq.org/attachment.cgi?id=67896 Document containing screen captures prior to the Wine upgrade and then after along with error log
After upgrading from the Wine application to version 5.14, I discovered that launching the Windows game "Mahjong Titans" no longer worked. Shortly after launching the program, a program error dialog box is displayed indicating a page fault has occurred. Viewing the initial entry points, the module in error appeared to be the msdmo.dll linked library.
I have a virtual machine sandbox set up where I installed the source code for version 5.14 and built the application on the sandbox. Then, I launched the "Mahjong Titans" game there and received the same results. In viewing the source code for module "dmoreg.c" for the last iteration of Wine that worked with this game that I found (version 5.12), I found extensive changes were made to source code in the "msdmo" folder. In checking the "shortlogs", most if not all of these changes occurred in version 5.13.
As a further test in the sandbox machine, I renamed the source code file for module "dmoreg.c", brought in the source code for that module from version 5.12, and ran the "make" utility to rebuild the library in the sandbox. After doing so, the "Mahjong Titans" game once again worked without crashing. So this really seems to point to this module as having the issue. As a result of this testing, I backed up a copy of the "msdmo.dll" file for version 5.14 and copied in the file from version 5.12 for now as a work-around. This might be unstable, but I am basically just currently using Wine to launch games.
I am attaching a Libre Office document with some screen captures and the error log for further reference. FYI, here are the details of my system.
- Linux Mint 19.3 Cinnamon (kernel version 5.4.0-42-generic) - Wine version 5.14
FYI, file "msdmo.dll" is not in the above component list. That is why I selected "unknown"
If you wish to acquire the Mahjong Titans game, it is a part of an installation package that you can get at the following link:
https://winaero.com/request.php?1836
Please let me know if there is some other information that I might provide.
Regards,
Craig Schulstad
https://bugs.winehq.org/show_bug.cgi?id=49659
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |leslie_alistair@hotmail.com
--- Comment #1 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Hi Craig,
I am unable to produce the crash here.
Can you please run this on the command from the Mahjong directory and attached the log.txt here. WINEDEBUG=loaddll,msdmo wine Mahjong.exe >& log.txt
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #2 from Craig Schulstad craigaschulstad@gmail.com --- Created attachment 67907 --> https://bugs.winehq.org/attachment.cgi?id=67907 Requested log file
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #3 from Craig Schulstad craigaschulstad@gmail.com --- Created attachment 67908 --> https://bugs.winehq.org/attachment.cgi?id=67908 Additional log contrasting version 5.12 and version 5.14
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #4 from Craig Schulstad craigaschulstad@gmail.com --- Alistair,
Attached is a log created as you requested (log.txt). Running that reminded me of an additional bit of information I forgot to include. I set up these games in a 32-bit wine bottle (WINEARCH=win32 WINEPREFIX=/home/craig/Wine/Oberon). So I actually ran the requested command as follows:
WINEPREFIX=/home/craig/Wine/Oberon WINEDEBUG=loaddll,msdmo wine Mahjong.exe >& log.txt
Also, over the last couple of days, I have experimented with the dmoreg.c program for both the 5.12 version and the 5.14 version of the code. I localized the function in which the program falls over and it occurs in function "IsMediaTypeEqual" when it invokes the "IsEqualCLSID" function. I tracked down the specifications for that function and found that it was just a macro for calling the "memcmp" function, which does not like receiving an argument value of zero. I backtracked from the call of the "IsMediaTypeEqual" function and focused on the "IEnumDMO_fnNext" function. That appears to be where the issue develops. Placing "WINE_FIXME" statements at many of the same spots as the "TRACE" statements, I noticed a difference in the data extracted from the registry. I don't know if that's a red herring, but I am attaching another text file where I contrast the detail that is produced within the function "IEnumDMO_fnNext" for version 5.12 and version 5.14 (msdmo.txt). Hopefully this will assist you in your investigation. Please let me know if you require any additional information.
Regards,
Craig
https://bugs.winehq.org/show_bug.cgi?id=49659
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com Regression SHA1| |caa41d4917a84dbbeb4aa14f18c | |fecfd17efe71a
--- Comment #5 from Zebediah Figura z.figura12@gmail.com --- caa41d491 would have broken it; RegQueryValueEx() doesn't return ERROR_MORE_DATA if you pass it an empty buffer.
https://bugs.winehq.org/show_bug.cgi?id=49659
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|A program dump dialog |Mahjong Titans crashes on |occurs when launching |launch |Mahjong Titans using | |version 5.14 of Wine. | |Appears to be a regression | |in msdmo.dll. | Keywords| |regression Component|-unknown |msdmo
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #6 from Craig Schulstad craigaschulstad@gmail.com --- Created attachment 67915 --> https://bugs.winehq.org/attachment.cgi?id=67915 Screen capture noting the installation of Windows Media Player and codecs via winetricks.
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #7 from Craig Schulstad craigaschulstad@gmail.com --- Alastair,
After reviewing the trace yesterday it jogged my memory that the game had sound resources that required the usage of functions from the Windows Media Player application. So, I had used winetricks to install Windows Media Player 9, which also installs some codecs. It's probably the registry entries for those codecs that you were missing when attempting to replicate the issue. I've attached a screen capture of the player and codecs from the winetricks application. Hope that helps.
Regards,
Craig
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #8 from Andrey Gusev andrey.goosev@gmail.com --- It also affects Resident Evil 0 HD Remaster.
https://bugs.winehq.org/show_bug.cgi?id=49659
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |2d4e21d45e0bc17d40d2c91e649 | |938ab4d69e786
--- Comment #9 from Zebediah Figura z.figura12@gmail.com --- Should be fixed by https://source.winehq.org/git/wine.git/commitdiff/2d4e21d45e0bc17d40d2c91e649938ab4d69e786.
https://bugs.winehq.org/show_bug.cgi?id=49659
Andrey Gusev andrey.goosev@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Mahjong Titans crashes on |Multiple games crash on |launch |launch (Mahjong Titans, | |Resident Evil HD Remaster, | |Resident Evil 0 HD | |Remaster)
https://bugs.winehq.org/show_bug.cgi?id=49659
--- Comment #10 from Craig Schulstad craigaschulstad@gmail.com --- All,
I tested out the code fix in my sandbox and it worked great. Super! Thank you very much. I will look forward to the next release of Wine.
Regards,
Craig
https://bugs.winehq.org/show_bug.cgi?id=49659
Andrey Gusev andrey.goosev@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |SolisX007@yahoo.com
--- Comment #11 from Andrey Gusev andrey.goosev@gmail.com --- *** Bug 49926 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=49659
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #12 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 5.19.