https://bugs.winehq.org/show_bug.cgi?id=38264
Bug ID: 38264 Summary: Chessmaster 10th Edition crashes on startup (regression) Product: Wine Version: 1.7.38 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: multitude@internode.on.net Distribution: ---
Wine v1.7.38 crashes ChessMaster 10th Edition on startup:
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x00000000).
Ran fine on v1.7.37.
Did a 'git bisect' and it says:
bfd4836867d6d90eaeae6ccbc02e37678b59b8f1 is the first bad commit commit bfd4836867d6d90eaeae6ccbc02e37678b59b8f1 Author: Matteo Bruni mbruni@codeweavers.com Date: Tue Feb 24 13:38:20 2015 +0100
opengl32: Return a NULL pointer for functions requiring unsupported or disabled extensions.
To reproduce: * Create a 32-bit WINE environment. * Install the Chessmaster 10 demo from:
https://archive.org/download/Chessmaster10thEditionDemo/Chessmaster10thEditi... * Run 'game.exe'.
https://bugs.winehq.org/show_bug.cgi?id=38264
multitude multitude@internode.on.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |bfd4836867d6d90eaeae6ccbc02 | |e37678b59b8f1
https://bugs.winehq.org/show_bug.cgi?id=38264
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, regression URL| |https://archive.org/downloa | |d/Chessmaster10thEditionDem | |o/Chessmaster10thEditionDem | |o.exe CC| |matteo.mystral@gmail.com, | |sebastian@fds-team.de
https://bugs.winehq.org/show_bug.cgi?id=38264
multitude multitude@internode.on.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Chessmaster 10th Edition |Chessmaster 10 & 11 crash |crashes on startup |on startup (regression) |(regression) |
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #1 from Matteo Bruni matteo.mystral@gmail.com --- I can't reproduce this. I guess you're running with the OpenGL renderer, right?
Can you please attach a +wgl trace of a failing run?
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #2 from multitude multitude@internode.on.net --- Created attachment 51104 --> https://bugs.winehq.org/attachment.cgi?id=51104 +wgl trace log
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #3 from multitude multitude@internode.on.net --- Hi Matteo,
I've ran a trace with the software renderer to remove any possible video driver interference:
$ LIBGL_ALWAYS_SOFTWARE=1 WINEDEBUG=+wgl wine game.exe
Attached as '+wgl trace log'.
cheers, multitude
https://bugs.winehq.org/show_bug.cgi?id=38264
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1
--- Comment #4 from Matteo Bruni matteo.mystral@gmail.com --- Thanks for the trace, it was definitely helpful.
It's probably wined3d crashing in state_cb() when trying to call glBindBufferBase. Since the regression patch we're returning NULL pointers to GL functions which are not supported by the GL implementation, given the GL version and the extensions advertised, as specified by the XML API registry from Khronos. In your case GL_ARB_uniform_buffer_object is supported but the GL version exposed is 2.1 and the XML file requires version 3.0 for glBindBufferBase, so we return NULL and crash when going to use the function later on.
As far as I can see GL_ARB_uniform_buffer_object specifies BindBufferBase without any version requirements, so I think it's an issue in the XML file. I'm not sure how one would report such an issue to Khronos.
When Khronos fixes its XML we can update our code and finally fix the issue for you. For the time being you can either revert the regression patch you identified or comment out the GL_ARB_uniform_buffer_object entry in the gl_extension_map[] table in wined3d/directx.c.
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #5 from multitude multitude@internode.on.net --- Thanks alot for the in depth response.
Interesting how the low exposed OpenGL version is a factor. I'll find out what the hardware drivers are exposing.
cheers, multitude
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #6 from multitude multitude@internode.on.net --- Hardware drivers were also exposing OpenGL 2.1.
Confirmed ChessMaster doesn't crash when the software (and hardware) drivers are brought up to OpenGL 3.0.
cheers, multitude
https://bugs.winehq.org/show_bug.cgi?id=38264
Michael Cronenworth mike@cchtml.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mike@cchtml.com
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #7 from Matteo Bruni matteo.mystral@gmail.com --- This should be fixed in today's git by 6c6f92ee42b518d0e6cd97195b4ca9b4fae20114. Can you retest with a GL 2.1 driver to confirm?
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #8 from multitude multitude@internode.on.net --- Confirmed. No longer crashes with OpenGL 2.1 drivers. Thanks Matteo.
https://bugs.winehq.org/show_bug.cgi?id=38264
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Component|-unknown |opengl Resolution|--- |FIXED Summary|Chessmaster 10 & 11 crash |Chessmaster 10 & 11 crash |on startup (regression) |on startup
--- Comment #9 from Matteo Bruni matteo.mystral@gmail.com --- Thank you for testing, I'm marking this bug as FIXED.
https://bugs.winehq.org/show_bug.cgi?id=38264
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |6c6f92ee42b518d0e6cd97195b4 | |ca9b4fae20114
https://bugs.winehq.org/show_bug.cgi?id=38264
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.42.
https://bugs.winehq.org/show_bug.cgi?id=38264
DenTaKu dentaku@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dentaku@web.de
--- Comment #11 from DenTaKu dentaku@web.de --- Alas, Chessmaster 2000 still crashes on my Ubuntu 14.04 LTS 64 Bit:
fixme:service:scmdatabase_autostart_services Auto-start service L"SecDrv" failed to start: 2 p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden fixme:imm:ImmDisableIME (-1): stub
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #12 from DenTaKu dentaku@web.de --- ... after installing missing lib:
fixme:service:scmdatabase_autostart_services Auto-start service L"SecDrv" failed to start: 2 fixme:imm:ImmDisableIME (-1): stub
and Chessmaster just displays:
"A fatal error occured loading the opening Mentor book."
Nothing else.
https://bugs.winehq.org/show_bug.cgi?id=38264
--- Comment #13 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to DenTaKu from comment #11)
Alas, Chessmaster 2000 still crashes on my Ubuntu 14.04 LTS 64 Bit:
fixme:service:scmdatabase_autostart_services Auto-start service L"SecDrv" failed to start: 2
That's a different game and a different bug. The failure to start the SafeDisc service might be bug 21147.