#2491 closed defect (fixed)
KYRA: Assertion at final scene
Reported by: | SF/weine | Owned by: | vinterstum |
---|---|---|---|
Priority: | normal | Component: | Engine: Kyra |
Version: | Keywords: | ||
Cc: | Game: | Kyrandia 1 |
Description
At the very end of Legend of Kyrandia, in the room with the kyragem (the Kyravault), the game crashes with the following assert() when Malcolm fires his magic at you.
Error message:
scummvm: kyra/screen.cpp:286: void Kyra::Screen::copyRegion(int, int, int, int, int, int, int, int, int): Assertion `x1 + w <= SCREEN_W && y1 + h <= SCREEN_H' failed.
Commenting out the mentioned assertion makes things work (well, at least you get to complete the game...).
This is with the very latest cvs version (checked out a few hours after the announcement on scummvm-devel that the CVS repo has been frozen);
Linux build, compiled with ScummVM 0.9.0cvs (Feb 6 2006 13:25:00) Features compiled in: Vorbis FLAC MP3 ALSA zLib MPEG2 FluidSynth
The game version is the Floppy/English version.
Save game attached. Things to do to trigger: Click on exit (left side of screen). Malcolm enters. Wait...
Ticket imported from: #1425622. Ticket imported from: bugs/2491.
Attachments (1)
Change History (10)
by , 19 years ago
comment:1 by , 19 years ago
Owner: | set to |
---|---|
Summary: | Assertion at final scene → KYRA: Assertion at final scene |
comment:2 by , 19 years ago
Having some problems reproducing this bug, even with the attached savegame.
What version number is your copy of Kyra? Should be listed if you start it in DOSBox.
comment:3 by , 19 years ago
Also, in that copyRegion() function, could you remove the first parameter of the debug() call right at the start of the function (the '9, '), trigger the assert again, and then post what values were printed out as the last call :)
Thanks!
comment:4 by , 19 years ago
It says Version 1.0 on startup.
Screen::copyRegion(259, 47, 259, 47, 53, 54, 2, 0, 2) Screen::copyRegion(60, 25, 60, 25, 16, 9, 2, 0, 0) Screen::copyRegion(28325, 25, 28325, 25, 16, 9, 2, 0, 0)
Are the last three before the crash (even I can see that those coordinates are probably not too healthy...)
comment:5 by , 19 years ago
Could you provide us output when running scummvm with -d9? Should be something like: "scummvm -d9 kyra1 > logfile.txt" in your terminal and then give us only the last ~50 rows (at the VERY bottom).
comment:6 by , 19 years ago
Ok, I just committed a possible fix for this. Please let us know if it works :)
Thanks!
comment:8 by , 19 years ago
Owner: | changed from | to
---|---|
Resolution: | → fixed |
Status: | new → closed |
A way to trigger the assert()