#6447 SCI: SQ4 - Crash within Hint Book

SCI: Space Quest 4
closed-fixed
M. Kiewitz
5
2013-11-16
2013-11-05
No

When viewing the hint book, clicking the hint book navigation buttons with any action other than the hint book revealer or the hand crashes the game in ScummVM. For example, when clicking the look action on the exit button the message is:

Uninitialized read for temp 0 from method exitBut::doVerb (room 397, script 708, localCall ffffffff)!

To reproduce:

1. Open the hint book. (The action is automatically set to hint book revealer.)
2. Switch to the look action and click the exit button.
3. The message "Press this button to put the hint book away." appears. Click to dismiss it.
4. The game crashes and the ScummVM console appears.

Similar results occur when clicking the "prev" or "next" buttons and when using the actions walk, talk, smell, etc.

I don't know if this is relevant, but I've noticed that once obtaining the hint book, saving the game (and loading that game) prints to the console:

WARNING: Failed to locate base object for object at 0055:0C96; skipping!
WARNING: Failed to locate base object for object at 0065:1B04; skipping!
WARNING: Failed to locate base object for object at 0065:2284; skipping!
WARNING: Failed to locate base object for object at 0065:12E2; skipping!
WARNING: Failed to locate base object for object at 0065:20B6; skipping!
WARNING: Failed to locate base object for object at 0067:080A; skipping!

Attached are save games right before and after picking up the hint book.

ScummVM: 1.6.0 and 1.7.0 Nightly Win32.
SQ4: 1.1 English Floppy

I also tried with the 1.5.0 iPhone build and it did not crash.

Discussion

  • Save game right before getting the hint book

     
    Attachments
  • Save game right after getting the hint book

     
    Attachments
  • M. Kiewitz
    M. Kiewitz
    2013-11-16

    was a script bug, solved by workaround
    commit #297d5764fd89a2cad540c390563e119eb70608ff

     
  • M. Kiewitz
    M. Kiewitz
    2013-11-16

    • status: open --> closed-fixed
    • assigned_to: M. Kiewitz