Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#5142 closed defect (fixed)

LAURABOW2: Crash during introduction

Reported by: OmerMor Owned by: lordhoto
Priority: normal Component: Engine: SCI
Keywords: Cc:
Game: Laura Bow 2: The Dagger of Amon-Ra

Description

Game version: DOS/Floppy/English Scummvm version: 1.2.0svn51733

Description: During the introduction, when the Egyptian guy is talking to carter on the docks, the game crashes.

The following is printed to the console:

WARNING: Attempt to read character from non-raw data! Assertion failed: idx >= 0 && (uint)idx < _size, file ./common/array.h, line 164

Ticket imported from: #3039566. Ticket imported from: bugs/5142.

Change History (8)

comment:1 by SF/mthreepwood, 9 years ago

Summary: Crash during introductionLAURABOW2: Crash during introduction

comment:2 by SF/kuroshiro, 9 years ago

Could not reproduce this with the same revision and the same version of the game.

Seems you either are missing data files or are using a pirated copy.

comment:3 by SF/philohippus, 9 years ago

It's not a problem with omer_mor's game, I confirm this bug also happens with the CD version (v1.1). To produce the bug, you have to quickly click through the dialog. Same console output:

Assertion failed: idx >= 0 && (uint)idx < _size, file ./common/array.h, line 164 This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.

comment:4 by wjp, 9 years ago

Pesky bug to reproduce in a debugger. In the murder scene at the start of the intro, there is a timing problem that sometimes makes the murderer wait until the music stops before putting the corpse in the trunk. If that happens, this assert no longer seems to occur (and I tried it about 20 times). Unfortunately, when running in gdb, this timing problem _always_ seems to be happen.

Attaching the debugger only after this scene gets me this backtrace when clicking through the dialog rapidly:

#0 0x00007f9278435555 in raise () from /lib/libc.so.6 #1 0x00007f92784369d6 in abort () from /lib/libc.so.6 #2 0x00007f927842e0c5 in __assert_fail () from /lib/libc.so.6 #3 0x0000000000b4c700 in Common::Array<Sci::reg_t>::operator[] ( this=0x1938df0, idx=7) at ./common/array.h:164 #4 0x0000000000b4c742 in Sci::Object::setInfoSelector (this=0x1938dd8, value= {segment = 0, offset = 1}) at ./engines/sci/engine/segment.h:243 #5 0x0000000000b4c772 in Sci::Object::markAsClone (this=0x1938dd8) at ./engines/sci/engine/segment.h:289 #6 0x0000000000b4bf0b in Sci::kClone (s=0x17cc1c0, argc=1, argv=0x17e4754) at engines/sci/engine/kscripts.cpp:168 #7 0x0000000000b68aa2 in callKernelFunc (s=0x17cc1c0, kernelCallNr=4, argc=1) at engines/sci/engine/vm.cpp:729 #8 0x0000000000b6cb88 in Sci::run_vm (s=0x17cc1c0) at engines/sci/engine/vm.cpp:1429 #9 0x0000000000b2f225 in Sci::SciEngine::runGame (this=0x1747bd0) at engines/sci/sci.cpp:441 #10 0x0000000000b2ff3d in Sci::SciEngine::run (this=0x1747bd0) at engines/sci/sci.cpp:291 #11 0x0000000000410558 in runGame (plugin=0x16c80d0, system=@0x1676bf0, edebuglevels=@0x7fff292f4aa0) at base/main.cpp:212 #12 0x0000000000410f58 in scummvm_main (argc=2, argv=0x7fff292f5078) at base/main.cpp:399 #13 0x000000000040d2d3 in main (argc=2, argv=0x7fff292f5078) at backends/platform/sdl/main.cpp:66

comment:5 by m-kiewitz, 9 years ago

this also happens right during the sierra logo intro, when you press esc and fast click. (thx to pgr for finding this)

comment:6 by lordhoto, 9 years ago

The assertion should be fixed starting with revision 52561. Please try the next daily build to check whether it works for you.

comment:7 by lordhoto, 9 years ago

Owner: set to lordhoto
Resolution: fixed
Status: newclosed

comment:8 by OmerMor, 9 years ago

Fixed! :-)

Note: See TracTickets for help on using tickets.