Bug #11141 2007-05-21 19:00
biplab
Fatal Crash while removing tools
A fatal crash can be observed while removing tools from Tools menu. To reproduce the crash do the following, * Add a tool using Tools>Configure menu option and click OK. Now the added tool will be available under Tools menu. * Delete the newly added tool using Tools>Configure menu option and click OK. Now C::B will crash. The crash is not observed if: * A separator is added & removed. * If tool list is not empty. The backtrace is as follows: Quote (gdb) run Starting program: F:\cbsource\src\devel/codeblocks.exe ---Type <return> to continue, or q <return> to quit--- Program received signal SIGSEGV, Segmentation fault. 0x61a1a0aa in wxListBase::GetCount (this=0xfeeeff22) at C:/wxWidgets-2.8.4/include/wx/list.h:517 517 size_t GetCount() const { return m_count; } (gdb) bt full #0 0x61a1a0aa in wxListBase::GetCount (this=0xfeeeff22) at C:/wxWidgets-2.8.4/include/wx/list.h:517 No locals. #1 0x61a1a0f0 in wxMenuBase::GetMenuItemCount (this=0xfeeefeee) at C:/wxWidgets-2.8.3/include/wx/menu.h:218 No locals. #2 0x61884319 in MenuItemsManager::Clear (this=0x22ac818) at F:/cbsource/src/sdk/menuitemsmanager.cpp:92 ni = (struct wxMenuItem *) 0x22ac8d0 menu = (struct wxMenu *) 0xfeeefeee subMenu = (struct wxMenu *) 0xfeeefeee i = 0 #3 0x619271ef in ToolsManager::BuildToolsMenu (this=0x22ac7d0, menu=0x229ead8) at F:/cbsource/src/sdk/toolsmanager.cpp:318 node = (wxToolsListNode *) 0x23f46c #4 0x619279fd in ToolsManager::Configure (this=0x22ac7d0) at F:/cbsource/src/sdk/toolsmanager.cpp:358 dlg = {<> = {<No data fields>}, static sm_eventTableEntries = { {<wxEventTableEntryBase> = {m_id = 127, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487774, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = 128, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487802, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = 637, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487819, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = 638, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487881, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = 639, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487937, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = 640, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487986, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f55e8}, {<wxEventTableEntryBase> = {m_id = -1, m_lastId = -1, m_fn = {__pfn = ( void ( struct wxObject::*)(struct wxEvent &,)) 204487675, __delta = 0}, m_callbackUserData = 0x0}, m_eventType = @0x6d2f5438}, {<wxEventTableEntryBase> = {m_id = 0, m_lastId = 0, m_fn = {__pfn = invalid pointer to member function (gdb) C::B crashes at line 92 of sdk/menuitemsmanager.cpp file where subMenu->GetMenuItemCount() has been called.
- Category
- Application::Crash
- Group
- Status
- Closed
- Close date
- 2007-05-22 09:17
- Assigned to
- mandrav
History
mandrav 2007-05-22 09:17
This bug is now fixed in HEAD.
Thank you for reporting it.