[Scummvm-tracker] [ScummVM :: Bugs] #14258: AGS: Crash and text glitches for Dreams in the Witch House

ScummVM :: Bugs trac at scummvm.org
Tue Feb 21 17:29:10 UTC 2023


#14258: AGS: Crash and text glitches for Dreams in the Witch House
-------------------------+-------------------------------------------------
Reporter:  antoniou79    |      Owner:  (none)
    Type:  defect        |     Status:  new
Priority:  normal        |  Component:  Engine: AGS
 Version:                |   Keywords:  Dreams in the Witch House, crash,
    Game:                |  fonts, glyphs,
-------------------------+-------------------------------------------------
 I am testing with ScummVM 2.8git (latest, built locally from master HEAD)
 on Windows 10 x64.

 The version of the game is from GOG, current version 1.02, English
 language.

 The issues that I have so far encountered with the game:
 1. During credits (accessible from the game's start menu) the game would
 randomly crash and also randomly display white-ish artifacts at the bottom
 of the screen while the text crawl is ongoing.
 2. Switching back and forth from Credits view to Start Menu view would
 also cause white-ish artifacts to be dispayed on screen. A crash could
 randomly happen in this screen as well. This might be connected to the
 previous issue though and have the same cause.
 3. At least some font glyphs render very different than when playing the
 game as standalone (from it's executable, without ScummVM). Like the
 capital "S" seems to be rendered as a small case "s". This is the most
 striking to me, but other glyphs are different too. I will be attaching
 screenshots for this.
 4. Some text overlaps out of its "container" and it does not look as it's
 supposed to be. In the "standalone" launch the text fits in its containers
 properly. I will be attaching screenshots for this too.
 5. This is a minor glitch, but it is different than what the "standalone"
 launch of the game does. Sometimes, when launching the game, after the
 first logo animation for "Atom Brain Games", on ScummVM there is a brief
 glimpse of the main character. On "standalone" launch this glimpse is not
 there, and it's a smooth fade out/fade in to the Start menu screen. (Maybe
 this is due to the debug mode being really slow, in which case it's
 probably not a serious bug)

 When testing with my MinGW x64 builds for cases 1 and 2, ScummVM would
 either abruptly exit to desktop with no message at all or crash with a
 "Segmentation fault".

 When debugging with Visual Studio, at the point when the game crashed, the
 code execution was either:
 - In ags/lib/allegro.gfx.cpp, putpixel(), line 248-249, "case 4", and the
 VS message was "Exception thrown at 0x00007FF652203AF3 in scummvm.exe:
 0xC0000005: Access violation writing location 0x0000018FDFEACD34." This
 was the most often one I got (probably the address locations would vary --
 I didn't notice). When this happens, variable y has a value of "-1".
 - In ags/engine/media/audio/sound.cpp, my_load_static_ogg(), lines 74-75.
 I didn't get this more than once, so it could be a side effect of the
 invalid memory access of the previous issue.

 What seems to have solved issue 1 (and possibly issue 2, if they are
 connected).
 - I copied the extra conditions for "x < -1" and "y < -1" to our code in
 putpixel() from:
 https://github.com/adventuregamestudio/ags/blob/bcf90697ac93080d0edac3e99727041a4e2b461a/Common/gfx/allegrobitmap.cpp#L349

 Since this "fix", I did not get issues 1 nor 2. I could create a PR for
 this, but maybe someone more familiar with the engine could do it -- even
 without a PR. It's quite a simple fix, and it seems that the code for it
 in the AGS source tree is from a really old commit (11 years ago).
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/14258>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list