I'm playing a bit with the plugins and I found a rather strange crash.
To reproduce:
1. Open codeblocks
2. Open Plugins -> Manager ...
3. Unload the compiler plugin
4. Load the compiler plugin
5. Unload the compiler plugin -> codeblocks crashes
Tested on gentoo linux amd64 wxgtk 2.8.12.x latest trunk version of c::b, compiled in c::b
Here is the backtrace:
#0 0x7ffff497c835 wxWindowBase::TryParent(wxEvent&) () (/usr/lib64/libwx_gtk2u_core-2.8.so.0:??)
#1 0x7ffff420b2b0 wxEvtHandler::ProcessEvent(wxEvent&) () (/usr/lib64/libwx_baseu-2.8.so.0:??)
#2 0x7ffff5737943 wxAuiNotebook::SetSelection(unsigned long) () (/usr/lib64/libwx_gtk2u_aui-2.8.so.0:??)
#3 0x7ffff5739542 wxAuiNotebook::RemovePage(unsigned long) () (/usr/lib64/libwx_gtk2u_aui-2.8.so.0:??)
#4 0x7ffff57396cd wxAuiNotebook::DeletePage(unsigned long) () (/usr/lib64/libwx_gtk2u_aui-2.8.so.0:??)
#5 0x7ffff3c1ff6f cbAuiNotebook::DeletePage(this=0xe7ec00, page=3) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/sdk/cbauibook.cpp:590)
#6 0x4b2b85 InfoPane::DeleteLogger(this=0xe7ec00, l=0x1da7fa0) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/src/infopane.cpp:452)
#7 0x46a1dc MainFrame::OnRemoveLogWindow(this=0xb46220, event=...) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/src/main.cpp:4613)
#8 0x47a0a7 cbEventFunctor<MainFrame, CodeBlocksLogEvent>::Call(this=0x1452810, event=...) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/include/cbfunctor.h:35)
#9 0x7ffff3c21f58 Manager::ProcessEvent(this=0x8775c0, event=...) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/sdk/manager.cpp:211)
#10 0x7fffe212e43d CompilerGCC::OnRelease(this=0x1317100, appShutDown=false) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/plugins/compilergcc/compilergcc.cpp:492)
#11 0x7ffff3c2dfb4 cbPlugin::Release(this=0x1317100, appShutDown=false) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/sdk/cbplugin.cpp:85)
#12 0x7ffff3c62b86 PluginManager::DetachPlugin(this=0x116aa50, plugin=0x1317100) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/sdk/pluginmanager.cpp:207)
#13 0x7ffff3b2622b PluginsConfigurationDlg::OnToggle(this=0x7fffffffc420, event=...) (/home/obfuscated/projects/codeblocks/dev/trunk2/src/sdk/pluginsconfigurationdlg.cpp:200)
#14 0x7ffff420ae56 wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () (/usr/lib64/libwx_baseu-2.8.so.0:??)
#15 0x7ffff420afdb wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () (/usr/lib64/libwx_baseu-2.8.so.0:??)
#16 0x7ffff420b314 wxEvtHandler::ProcessEvent(wxEvent&) () (/usr/lib64/libwx_baseu-2.8.so.0:??)
#17 0x7ffff497c838 wxWindowBase::TryParent(wxEvent&) () (/usr/lib64/libwx_gtk2u_core-2.8.so.0:??)
#18 0x7ffff48d92e9 ??() (/usr/lib64/libwx_gtk2u_core-2.8.so.0:??)
#19 0x7ffff5c9358e ??() (/usr/lib64/libgobject-2.0.so.0:??)
#20 0x7ffff5cabedd g_signal_emit_valist() (/usr/lib64/libgobject-2.0.so.0:??)
#21 0x7ffff5caca15 g_signal_emit() (/usr/lib64/libgobject-2.0.so.0:??)
#22 0x7ffff7833245 ??() (/usr/lib64/libgtk-x11-2.0.so.0:??)
#23 0x7ffff5c9358e ??() (/usr/lib64/libgobject-2.0.so.0:??)
#24 0x7ffff5cabedd g_signal_emit_valist() (/usr/lib64/libgobject-2.0.so.0:??)
#25 0x7ffff5caca15 g_signal_emit() (/usr/lib64/libgobject-2.0.so.0:??)
#26 0x7ffff7831ffd ??() (/usr/lib64/libgtk-x11-2.0.so.0:??)
#27 0x7ffff78dcba8 ??() (/usr/lib64/libgtk-x11-2.0.so.0:??)
#28 0x7ffff5c932db g_closure_invoke() (/usr/lib64/libgobject-2.0.so.0:??)
#29 0x7ffff5ca4b9d ??() (/usr/lib64/libgobject-2.0.so.0:??)