[Scummvm-tracker] [ScummVM] #9766: GUI: Assert in SaveLoadChooser dialog

Thierry Crozat trac at scummvm.org
Sun May 7 11:28:10 CEST 2017


#9766: GUI: Assert in SaveLoadChooser dialog
-------------------+--------------------
Reporter:  criezy  |      Owner:  (none)
    Type:  defect  |     Status:  new
Priority:  normal  |  Component:  GUI
Keywords:          |       Game:
-------------------+--------------------
 Today I hit the following assert when trying to load a save game from the
 launcher:
 Assertion failed: (idx < _size), function operator[], file
 ./common/array.h, line 164.

 The call stack is:
 {{{
 Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
 0   libsystem_kernel.dylib              0x00007fff86dc6866 __pthread_kill
 + 10
 1   libsystem_pthread.dylib             0x00007fff8153b35c pthread_kill +
 92
 2   libsystem_c.dylib                   0x00007fff89497b26 abort + 125
 3   libsystem_c.dylib                   0x00007fff894619b3 __assert_rtn +
 321
 4   scummvm                             0x0000000106351b35
 Common::Array<SaveStateDescriptor>::operator[](unsigned int) + 85
 (array.h:164)
 5   scummvm                             0x000000010634d68c
 GUI::SaveLoadChooserSimple::handleCommand(GUI::CommandSender*, unsigned
 int, unsigned int) + 764 (saveload-dialog.cpp:432)
 6   scummvm                             0x00000001063f4adb
 GUI::CommandSender::sendCommand(unsigned int, unsigned int) + 107
 (object.h:56)
 7   scummvm                             0x000000010637bf4a
 GUI::ButtonWidget::handleMouseUp(int, int, int, int) + 186
 (widget.cpp:350)
 8   scummvm                             0x00000001063160df
 GUI::Dialog::handleMouseUp(int, int, int, int) + 319 (dialog.cpp:214)
 9   scummvm                             0x00000001063255c1
 GUI::GuiManager::processEvent(Common::Event const&, GUI::Dialog*) + 801
 (gui-manager.cpp:582)
 10  scummvm                             0x0000000106324ce2
 GUI::GuiManager::runLoop() + 706 (gui-manager.cpp:351)
 11  scummvm                             0x0000000106315a9a
 GUI::Dialog::runModal() + 42 (dialog.cpp:83)
 12  scummvm                             0x000000010634d312
 GUI::SaveLoadChooserSimple::runIntern() + 130 (saveload-dialog.cpp:404)
 13  scummvm                             0x000000010634bddc
 GUI::SaveLoadChooserDialog::run(Common::String const&, MetaEngine const*)
 + 332 (saveload-dialog.cpp:191)
 14  scummvm                             0x000000010634ad17
 GUI::SaveLoadChooser::runModalWithPluginAndTarget(PluginSubclass<MetaEngine>
 const*, Common::String const&) + 343 (saveload.cpp:101)
 15  scummvm                             0x000000010632a77f
 GUI::LauncherDialog::loadGame(int) + 479 (launcher.cpp:517)
 16  scummvm                             0x000000010632a13f
 GUI::LauncherDialog::loadGameButtonPressed(int) + 79 (launcher.cpp:467)
 17  scummvm                             0x000000010632ae34
 GUI::LauncherDialog::handleCommand(GUI::CommandSender*, unsigned int,
 unsigned int) + 852 (launcher.cpp:642)
 18  scummvm                             0x00000001063f4adb
 GUI::CommandSender::sendCommand(unsigned int, unsigned int) + 107
 (object.h:56)
 19  scummvm                             0x000000010637bf4a
 GUI::ButtonWidget::handleMouseUp(int, int, int, int) + 186
 (widget.cpp:350)
 20  scummvm                             0x00000001063160df
 GUI::Dialog::handleMouseUp(int, int, int, int) + 319 (dialog.cpp:214)
 21  scummvm                             0x00000001063255c1
 GUI::GuiManager::processEvent(Common::Event const&, GUI::Dialog*) + 801
 (gui-manager.cpp:582)
 22  scummvm                             0x0000000106324ce2
 GUI::GuiManager::runLoop() + 706 (gui-manager.cpp:351)
 23  scummvm                             0x0000000106315a9a
 GUI::Dialog::runModal() + 42 (dialog.cpp:83)
 24  scummvm                             0x000000010429e076
 launcherDialog() + 134 (main.cpp:106)
 25  scummvm                             0x000000010429d3bb scummvm_main +
 2955 (main.cpp:500)
 26  scummvm                             0x000000010429b3fc main + 172
 (macosx-main.cpp:45)
 27  scummvm                             0x0000000104295724 start + 52
 }}}

 I was not able to reproduce it and valgrind doesn't report any issue. For
 me it was a one off, but if it happened once, it can probably happen
 again. I suspect it might be related to cloud sync, in which case the
 timing to reproduce it might be key.

 This is with commit a403523fafafdaed7148b4c4a43c8b27ecdc63e6 compiled on
 OS X 10.9 with SDL2 and cloud enabled.

--
Ticket URL: <https://bugs.scummvm.org/ticket/9766>
ScummVM <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list