Menu

#5604 SQ3 Game crashes on end scene

SCI: Space Quest 3
closed-fixed
5
2011-02-27
2011-02-27
No

After winning the game you land on eart at the sierra offices. In the scene where you get the closup with Ken the game crashes with the following message:

Assertion failed isvalidrect<> file ./common/rect.h line 103

Load the saved game to start the scene

OS: Win7
ScummVM:1.3.0git feb 26 2011 22:32:35
gameversion: DOS/ENGLISH (from the sq collection by Sierra)

Discussion

  • Rene van Hasselaar

    Saved game

     
  • Willem Jan Palenstijn

    I can reproduce this.

    #2 0x00007f3f0e916880 in __assert_fail () from /lib/libc.so.6
    #3 0x00000000004a3031 in Rect (this=0x7fff33722dd0, x1=32758, y1=145, x2=320,
    y2=190) at ./common/rect.h:103
    #4 0x0000000000e02d14 in Sci::GfxPaint16::bitsSave (this=0x1e4fc10,
    rect=@0x1e80e72, screenMask=1 '\001')
    at engines/sci/graphics/paint16.cpp:317
    #5 0x0000000000e0d4e0 in Sci::GfxPorts::drawWindow (this=0x1e50e50,
    pWnd=0x1e80e40) at engines/sci/graphics/ports.cpp:388
    #6 0x0000000000e0e270 in Sci::GfxPorts::kernelNewWindow (this=0x1e50e50, dims=
    {top = 156, left = -4, bottom = 188, right = 324}, restoreRect=
    {top = 0, left = 0, bottom = 0, right = 0}, style=4, priority=15,
    colorPen=0, colorBack=15, title=0x7fff33722f00 "Mark")
    at engines/sci/graphics/ports.cpp:222
    #7 0x0000000000dbdae9 in Sci::kNewWindow (s=0x1e33ef0, argc=9, argv=0x1e792a4)
    at engines/sci/engine/kgraphics.cpp:1109
    #8 0x0000000000dec37c in callKernelFunc (s=0x1e33ef0, kernelCallNr=19, argc=9)
    at engines/sci/engine/vm.cpp:695
    #9 0x0000000000def0a9 in Sci::run_vm (s=0x1e33ef0)
    at engines/sci/engine/vm.cpp:1169
    #10 0x0000000000dae833 in Sci::SciEngine::runGame (this=0x1d92840)
    at engines/sci/sci.cpp:690
    #11 0x0000000000daf7de in Sci::SciEngine::run (this=0x1d92840)
    at engines/sci/sci.cpp:355
    #12 0x000000000040ad86 in runGame (plugin=0x1ae6560, system=@0x1ad6600,
    edebuglevels=@0x7fff33724340) at base/main.cpp:213
    #13 0x000000000040b8c8 in scummvm_main (argc=1, argv=0x7fff337249a8)
    at base/main.cpp:423
    #14 0x0000000000409fb9 in main (argc=1, argv=0x7fff337249a8)
    at backends/platform/sdl/posix/posix-main.cpp:48

     
  • Willem Jan Palenstijn

    The direct cause for the invalid rect is r.left = r.left & 0x7FFE; in GfxPorts::addWindow, but I haven't investigated any further

     
  • Willem Jan Palenstijn

    Fixed in d17a88940078f573b843de5a9415feb5292dffc3.

    Thanks for the report.

     
  • Willem Jan Palenstijn

    • assigned_to: nobody --> wjpalenstijn
    • status: open --> closed-fixed