#10637 closed defect (fixed)

GUI: Segfault when accessing the option dialog from the GMM

Reported by: bgK Owned by: criezy
Priority: normal Component: GUI
Keywords: Cc:
Game:

Description

Git revision: cfe176a4f5600e2c772af40451ee6db4187291dc

Thread 1 "scummvm" received signal SIGSEGV, Segmentation fault.
0x000055555577ecca in GUI::Widget::clearFlags (this=0x0, flags=2) at ../gui/widget.cpp:75
75		updateState(_flags, _flags & ~flags);
(gdb) bt
#0  0x000055555577ecca in GUI::Widget::clearFlags (this=0x0, flags=2) at ../gui/widget.cpp:75
#1  0x0000555555780474 in GUI::Widget::setVisible (this=0x0, e=true) at ../gui/widget.cpp:202
#2  0x000055555570cf19 in GUI::OptionsDialog::setupGraphicsTab (this=0x61800000cc80) at ../gui/options.cpp:1421
#3  0x000055555570ce63 in GUI::OptionsDialog::reflowLayout (this=0x61800000cc80) at ../gui/options.cpp:1417
#4  0x00005555556d9cf5 in GUI::GuiManager::openDialog (this=0x61d00005fa80, dialog=0x61800000cc80) at ../gui/gui-manager.cpp:459
#5  0x00005555556d2c14 in GUI::Dialog::open (this=0x61800000cc80) at ../gui/dialog.cpp:89
#6  0x00005555556f5f38 in GUI::OptionsDialog::open (this=0x61800000cc80) at ../gui/options.cpp:451
#7  0x00005555556d2b2e in GUI::Dialog::runModal (this=0x61800000cc80) at ../gui/dialog.cpp:77
#8  0x000055555587260e in MainMenuDialog::handleCommand (this=0x61100006c380, sender=0x61100006ca88, cmd=1330664526, data=0)
    at ../engines/dialogs.cpp:138
#9  0x0000555555788a1c in GUI::CommandSender::sendCommand (this=0x61100006ca88, cmd=1330664526, data=0) at ../gui/object.h:55
#10 0x000055555578207b in GUI::ButtonWidget::handleMouseUp (this=0x61100006c9c0, x=86, y=1, button=1, clickCount=1) at ../gui/widget.cpp:332
#11 0x00005555556d3cb3 in GUI::Dialog::handleMouseUp (this=0x61100006c380, x=132, y=193, button=1, clickCount=1) at ../gui/dialog.cpp:226
#12 0x00005555556dba7e in GUI::GuiManager::processEvent (this=0x61d00005fa80, event=..., activeDialog=0x61100006c380) at ../gui/gui-manager.cpp:588
#13 0x00005555556d8db7 in GUI::GuiManager::runLoop (this=0x61d00005fa80) at ../gui/gui-manager.cpp:359
#14 0x00005555556d2b3b in GUI::Dialog::runModal (this=0x61100006c380) at ../gui/dialog.cpp:80
#15 0x0000555555869a5b in Engine::runDialog (this=0x61300000b640, dialog=...) at ../engines/engine.cpp:560
#16 0x0000555555868f6c in Engine::openMainMenuDialog (this=0x61300000b640) at ../engines/engine.cpp:509
#17 0x00005555557c7dcc in DefaultEventManager::pollEvent (this=0x60d000003920, event=...) at ../backends/events/default/default-events.cpp:148
#18 0x0000555555683406 in Groovie::GroovieEngine::run (this=0x61300000b640) at ../engines/groovie/groovie.cpp:266
#19 0x00005555556535d9 in runGame (plugin=0x6030000148f0, system=..., edebuglevels="") at ../base/main.cpp:264
#20 0x0000555555655ef3 in scummvm_main (argc=1, argv=0x7fffffffe168) at ../base/main.cpp:532
#21 0x000055555564efbd in main (argc=1, argv=0x7fffffffe168) at ../backends/platform/sdl/posix/posix-main.cpp:45

Change History (1)

comment:1 by criezy, 17 months ago

Owner: set to criezy
Resolution: fixed
Status: newclosed

Thank you for the report. I forgot the OptionsDialog could be accessed from the GMM, and that in such a case the graphics options are not included. The crash is now fixed.

Note: See TracTickets for help on using tickets.