Opened 12 years ago

Closed 12 years ago

#3373 closed defect (fixed)

SIMON1: v0.10+ always crash on x86_64.

Reported by: SF/pwigren Owned by: fingolfin
Priority: normal Component: Engine: AGOS
Keywords: Cc:
Game: Simon the Sorcerer 1

Description

ScummVM v0.10.0 and SVN as of today (7th august) always crash when I enter the screen with the blacksmith, in the very beginning (3rd screen).

It crashes at the very same spot in both Windows and CD32 versions.

Here is a backtrace, compiled with --enable-debug CXXFLAGS="-march=k8 -O0 -g"

Program received signal SIGSEGV, Segmentation fault.
0x0000000000554cf7 in AGOS::AGOSEngine::drawBackGroundImage (this=0xdd1650,
state=0x7fff337ff830) at engines/agos/gfx.cpp:762
762 dst[i] = src[i] + state->paletteMod;
(gdb) bt
#0 0x0000000000554cf7 in AGOS::AGOSEngine::drawBackGroundImage (
this=0xdd1650, state=0x7fff337ff830) at engines/agos/gfx.cpp:762
#1 0x0000000000558115 in AGOS::AGOSEngine_Simon1::drawImage (this=0xdd1650,
state=0x7fff337ff830) at engines/agos/gfx.cpp:730
#2 0x0000000000551a46 in AGOS::AGOSEngine::restoreBackGround (this=0xdd1650)
at engines/agos/draw.cpp:462
#3 0x0000000000552185 in AGOS::AGOSEngine::animateSprites (this=0xdd1650)
at engines/agos/draw.cpp:205
#4 0x0000000000553bfe in AGOS::AGOSEngine::processVgaEvents (this=0xdd1650)
at engines/agos/event.cpp:248
#5 0x0000000000553dc4 in AGOS::AGOSEngine::timer_proc1 (this=0xdd1650)
at engines/agos/event.cpp:622
#6 0x000000000055308a in AGOS::AGOSEngine::timer_callback (this=0xdd1650)
at engines/agos/event.cpp:560
#7 0x00000000005531ff in AGOS::AGOSEngine::delay (this=0xdd1650, amount=100)
at engines/agos/event.cpp:457
#8 0x000000000055cde6 in AGOS::AGOSEngine::waitForInput (this=0xdd1650)
at engines/agos/input.cpp:214
#9 0x0000000000543949 in AGOS::AGOSEngine::go (this=0xdd1650)
at engines/agos/agos.cpp:1041
#10 0x000000000040cfda in runGame (plugin=0xda9920, system=@0xd7b010,
edebuglevels=@0x7fff338005a0) at base/main.cpp:217
#11 0x000000000040d84a in scummvm_main (argc=1, argv=0x7fff33800b28)
---Type <return> to continue, or q <return> to quit---
at base/main.cpp:318
#12 0x000000000040c583 in main (argc=1, argv=0x7fff33800b28)
at backends/platform/sdl/sdl.cpp:123

Ticket imported from: #1769644. Ticket imported from: bugs/3373.

Change History (6)

comment:1 by fingolfin, 12 years ago

Owner: set to Kirben

comment:2 by Kirben, 12 years ago

A full back trace would be more useful, to see which variables are going out of bounds.

comment:3 by SF/pwigren, 12 years ago

sorry, I'm not very used to gdb. What is the syntax to do that?

comment:4 by fingolfin, 12 years ago

This should be fixed in SVN, thanks to Mark Weaver, I believe. Please confirm.

comment:5 by SF/pwigren, 12 years ago

Yay! It works now! Thanks!

comment:6 by fingolfin, 12 years ago

Owner: changed from Kirben to fingolfin
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.