[Scummvm-tracker] [ScummVM :: Bugs] #12079: Return to Launcher crash with RGB rendering on and different graphic mode from global opengl

ScummVM :: Bugs trac at scummvm.org
Sun Jan 24 21:46:08 UTC 2021


#12079: Return to Launcher crash with RGB rendering on and different graphic mode
from global opengl
--------------------+--------------------------
Reporter:  Tucky27  |       Owner:  (none)
    Type:  defect   |      Status:  new
Priority:  normal   |   Component:  Engine: SCI
 Version:           |  Resolution:
Keywords:           |        Game:
--------------------+--------------------------
Comment (by criezy):

 Here is what I found when investigating this: when switching between SDL
 and OpenGL graphics mode, the call to `g_system->setGraphicsMode` executes
 `OSystem_SDL::setGraphicsMode` which copies the state of the old graphics
 manager, deletes that manager, creates the new one, and sets its state. In
 this specific setting the state in the new OpenGLGraphicsManager fails,
 and that results in the assert on the next line trying to set the stretch
 mode.

 The reason it fails is that the game was using format ARGB8888 with the
 SDL graphics manager. But the OpenGL graphics manager does not support
 that format, and as a result trying to set it fails.

 My suggestion to fix that would be in `SdlGraphicsManager::setState` to
 not blindly use the pixel format from the state, but check that it is
 supported and if not use the first  format from `getSupportedFormats()`.
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/12079#comment:2>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list