Opened 12 years ago

Closed 12 years ago

Last modified 12 months ago

#3166 closed defect (fixed)

GOB1: Segfault when clicking just outside the screen

Reported by: salty-horse Owned by: DrMcCoy
Priority: normal Component: Engine: Gob
Keywords: Cc:
Game: Gobliiins

Description

Using ScummVM svn revision 26613.

Reproduced with the Amiga demo available here: http://quick.mixnmojo.com/demos/gob1_demo_ami.zip

When the game loads, choose the "pick up" action and point to the "health line" at the bottom of the screen. Click. If nothing happens try moving the cursor a few pixels up or down and click again. Eventually ScummVM will segfault.

The backtrace:
#0 0x00002b5fa41a4bf1 in Gob::Goblin::moveFindItem (this=0x963450, posX=181, posY=175) at engines/gob/goblin.cpp:983
983 if ((_vm->_map->_itemsMap[_pressedMapY][_pressedMapX] == 0) && (i < 20)) {
#1 0x00002b5fa41a8043 in Gob::Goblin::moveInitStep (this=0x963450, framesCount=1, action=4, cont=1, gobDesc=0x7cc890, pGobIndex=0x7fff0aa6fd98,
pNextAct=0x7fff0aa6fd9a) at engines/gob/goblin.cpp:1074
#2 0x00002b5fa41a83da in Gob::Goblin::doMove (this=0x963450, gobDesc=0x7cc890, cont=1, action=4) at engines/gob/goblin.cpp:1193
#3 0x00002b5fa41be397 in Gob::Inter_v1::o1_moveGoblin (this=0x868550, params=@0x7fff0aa6fe50) at engines/gob/inter_v1.cpp:2791
#4 0x00002b5fa41c36a9 in Gob::Inter_v1::executeGoblinOpcode (this=0x868550, i=1005, params=@0x7fff0aa6fe50) at engines/gob/inter_v1.cpp:701
#5 0x00002b5fa41bc903 in Gob::Inter_v1::o1_goblinFunc (this=0x868550, params=@0x7fff0aa6ff80) at engines/gob/inter_v1.cpp:1812
#6 0x00002b5fa41c37f9 in Gob::Inter_v1::executeFuncOpcode (this=0x868550, i=2 '\002', j=5 '\005', params=@0x7fff0aa6ff80) at engines/gob/inter_v1.cpp:679
#7 0x00002b5fa41b8802 in Gob::Inter::funcBlock (this=0x868550, retFlag=0) at engines/gob/inter.cpp:242
#8 0x00002b5fa41c3045 in Gob::Inter_v1::o1_if (this=0x868550, params=@0x7fff0aa700f0) at engines/gob/inter_v1.cpp:1294
#9 0x00002b5fa41c37f9 in Gob::Inter_v1::executeFuncOpcode (this=0x868550, i=0 '\0', j=8 '\b', params=@0x7fff0aa700f0) at engines/gob/inter_v1.cpp:679
#10 0x00002b5fa41b8802 in Gob::Inter::funcBlock (this=0x868550, retFlag=0) at engines/gob/inter.cpp:242
#11 0x00002b5fa41c3045 in Gob::Inter_v1::o1_if (this=0x868550, params=@0x7fff0aa70260) at engines/gob/inter_v1.cpp:1294
#12 0x00002b5fa41c37f9 in Gob::Inter_v1::executeFuncOpcode (this=0x868550, i=0 '\0', j=8 '\b', params=@0x7fff0aa70260) at engines/gob/inter_v1.cpp:679
#13 0x00002b5fa41b8802 in Gob::Inter::funcBlock (this=0x868550, retFlag=2) at engines/gob/inter.cpp:242
#14 0x00002b5fa41b88c3 in Gob::Inter::callSub (this=0x868550, retFlag=2) at engines/gob/inter.cpp:270
#15 0x00002b5fa41c3deb in Gob::Inter_v1::o1_callSub (this=0x868550, params=@0x7fff0aa703f0) at engines/gob/inter_v1.cpp:1154
#16 0x00002b5fa41c37f9 in Gob::Inter_v1::executeFuncOpcode (this=0x868550, i=0 '\0', j=1 '\001', params=@0x7fff0aa703f0) at engines/gob/inter_v1.cpp:679
#17 0x00002b5fa41b8802 in Gob::Inter::funcBlock (this=0x868550, retFlag=2) at engines/gob/inter.cpp:242
#18 0x00002b5fa41b88c3 in Gob::Inter::callSub (this=0x868550, retFlag=2) at engines/gob/inter.cpp:270
#19 0x00002b5fa419605c in Gob::Game_v1::playTot (this=0x7efe20, skipPlay=0) at engines/gob/game_v1.cpp:194
#20 0x00002b5fa418e02c in Gob::Game::start (this=0x7efe20) at engines/gob/game.cpp:451
#21 0x00002b5fa41b7747 in Gob::Init::initGame (this=0x877120, totName=0x0) at engines/gob/init.cpp:192
#22 0x00002b5fa41a07dd in Gob::GobEngine::go (this=0x867010) at engines/gob/gob.cpp:119

Ticket imported from: #1708863. Ticket imported from: bugs/3166.

Change History (3)

comment:1 by DrMcCoy, 12 years ago

Owner: set to DrMcCoy

comment:2 by DrMcCoy, 12 years ago

Resolution: fixed
Status: newclosed

comment:3 by digitall, 12 months ago

Component: Engine: Gob
Game: Gobliiins
Note: See TracTickets for help on using tickets.