Not sure how much of this is me screwing up or if it's just a coincidence, but I tried running amule in gdb twice yesterday (amule-cvs 20041206, wxGTK 2.5.3, GTK2, Unicoded) and it crashed me on both times, with different errors each time. Params sent to gdb were the uisual ones (ha SIGPIPE nostop noprint pass, ha SIG32 nostop noprint pass, set height 0, run). When I ran it alone, it didn't crash, though. :/
Anyway, enjoy the two backtraces.
Crashing the first time:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 24251)]
0x40671a63 in wxObject::UnRef() (this=0x8ca86ac) at src/common/object.cpp:306
306 wxASSERT_MSG( m_refData->m_count > 0, _T("invalid ref data count") );
Bt:
(gdb) bt
#0 0x40671a63 in wxObject::UnRef() (this=0x8ca86ac) at src/common/object.cpp:306
#1 0x406719f7 in wxObject::Ref(wxObject const&) (this=0x8ca86ac, clone=@0xbfffec30) at src/common/object.cpp:292
#2 0x40344356 in wxBitmap::operator=(wxBitmap const&) (this=0x8ca86ac, bmp=@0xbfffec30) at src/gtk/bitmap.cpp:1195
#3 0x401f58b6 in wxTaskBarIconArea::SetTrayIcon(wxBitmap const&) (this=0x8ca8508, bmp=@0xbfffec30) at src/unix/taskbarx11.cpp:144
#4 0x401f62f4 in wxTaskBarIcon::SetIcon(wxIcon const&, wxString const&) (this=0x8aad0c8, icon=@0x8aad120, tooltip=@0x8aad268) at src/unix/taskbarx11.cpp:295
#5 0x081eba24 in CMuleTrayIcon::UpdateTray() (this=0x8aad0c8) at MuleTrayIcon.cpp:191
#6 0x081eb9ca in CMuleTrayIcon::SetTrayIcon(int, unsigned) (this=0x8aad0c8, Icon=2, percent=0) at MuleTrayIcon.cpp:174
#7 0x082d8e57 in CamuleDlg::UpdateTrayIcon(int) (this=0x88b9508, percent=0) at amuleDlg.cpp:747
#8 0x082d870d in CamuleDlg::ShowTransferRate() (this=0x88b9508) at amuleDlg.cpp:688
#9 0x082d9edb in CamuleDlg::OnGUITimer(wxTimerEvent&) (this=0x88b9508) at amuleDlg.cpp:1024
#10 0x40610f1a in wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const (this=0x85fe508, handler=0x88b9508, func=
{__pfn = 0x82d9d40 , __delta = 0}, event=@0xbfffef30) at src/common/appbase.cpp:305
#11 0x406b1876 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) (entry=@0x85dd390, handler=0x88b9508, event=@0xbfffef30)
at src/common/event.cpp:1169
#12 0x406b08b4 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) (this=0x85dd220, event=@0xbfffef30, self=0x88b9508) at src/common/event.cpp:837
#13 0x406b1a8e in wxEvtHandler::ProcessEvent(wxEvent&) (this=0x88b9508, event=@0xbfffef30) at src/common/event.cpp:1231
#14 0x4046850d in wxTimerBase::Notify() (this=0x8aa4440) at src/common/timercmn.cpp:61
#15 0x403664c4 in timeout_callback (data=0x8aa4440) at src/gtk/timer.cpp:47
#16 0x40ce4a9f in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0
#17 0x08aa4440 in ?? ()
#18 0x40d399bc in g_idle_funcs () from /usr/lib/libglib-2.0.so.0
#19 0x085fe2cc in ?? ()
Full bt:
(gdb) bt full
#0 0x40671a63 in wxObject::UnRef() (this=0x8ca86ac) at src/common/object.cpp:306
No locals.
#1 0x406719f7 in wxObject::Ref(wxObject const&) (this=0x8ca86ac, clone=@0xbfffec30) at src/common/object.cpp:292
No locals.
#2 0x40344356 in wxBitmap::operator=(wxBitmap const&) (this=0x8ca86ac, bmp=@0xbfffec30) at src/gtk/bitmap.cpp:1195
No locals.
#3 0x401f58b6 in wxTaskBarIconArea::SetTrayIcon(wxBitmap const&) (this=0x8ca8508, bmp=@0xbfffec30) at src/unix/taskbarx11.cpp:144
winsize = {x = -1073746952, y = 1077153527}
bmpsize = {x = -1073746896, y = 145412384}
iconsize = {x = -1073746952, y = 1077167734}
region = { = { = {_vptr.wxObject = 0xbfffec30, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x40562b24}, m_visible = 216,
static ms_classInfo = {m_className = 0x404bad10, m_objectSize = 12, m_objectConstructor = 0x4035e5d4 , m_baseInfo1 = 0x4073744c,
m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40569b10, static sm_classTable = 0x85de060}}, static ms_classInfo = {m_className = 0x404bb47c,
m_objectSize = 12, m_objectConstructor = 0x40362490 , m_baseInfo1 = 0x40569af8, m_baseInfo2 = 0x0, static sm_first = 0x83f1950,
m_next = 0x40569c60, static sm_classTable = 0x85de060}}
#4 0x401f62f4 in wxTaskBarIcon::SetIcon(wxIcon const&, wxString const&) (this=0x8aad0c8, icon=@0x8aad120, tooltip=@0x8aad268) at src/unix/taskbarx11.cpp:295
bmp = { = { = {_vptr.wxObject = 0x40547de8, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x8aad370}, m_visible = false,
static ms_classInfo = {m_className = 0x404bad10, m_objectSize = 12, m_objectConstructor = 0x4035e5d4 , m_baseInfo1 = 0x4073744c,
m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40569b10, static sm_classTable = 0x85de060}}, static ms_classInfo = {m_className = 0x404b7bb4,
m_objectSize = 12, m_objectConstructor = 0x40340e3c , m_baseInfo1 = 0x40569af8, m_baseInfo2 = 0x0, static sm_first = 0x83f1950,
m_next = 0x40569734, static sm_classTable = 0x85de060}}
#5 0x081eba24 in CMuleTrayIcon::UpdateTray() (this=0x8aad0c8) at MuleTrayIcon.cpp:191
No locals.
#6 0x081eb9ca in CMuleTrayIcon::SetTrayIcon(int, unsigned) (this=0x8aad0c8, Icon=2, percent=0) at MuleTrayIcon.cpp:174
Bar_xSize = 5
Bar_xPos = 16
Bar_yPos = 0
Bar_ySize = 20
NewSize = 0
#7 0x082d8e57 in CamuleDlg::UpdateTrayIcon(int) (this=0x88b9508, percent=0) at amuleDlg.cpp:747
No locals.
#8 0x082d870d in CamuleDlg::ShowTransferRate() (this=0x88b9508) at amuleDlg.cpp:688
kBpsUp = 0.817767262
kBpsDown = 0
buffer = { = {static npos = 4294967195, m_pchData = 0x8dbe5bc}, }
label = (class wxStaticText *) 0x89c6e60
percentDown = 0
buffer2 = { = {static npos = 4294967195, m_pchData = 0x406e4690}, }
bmp = (class wxStaticBitmap *) 0x0
#9 0x082d9edb in CamuleDlg::OnGUITimer(wxTimerEvent&) (this=0x88b9508) at amuleDlg.cpp:1024
msPrev1 = 16953
msPrev5 = 17861
msPrevGraph = 15028
msPrevStats = 0
msPrevHist = 17000
msCur = 17861
bStatsVisible = false
msGraphUpdate = 3000
sStatsUpdate = 5
#10 0x40610f1a in wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const (this=0x85fe508, handler=0x88b9508, func=
{__pfn = 0x82d9d40 , __delta = 0}, event=@0xbfffef30) at src/common/appbase.cpp:305
No locals.
#11 0x406b1876 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) (entry=@0x85dd390, handler=0x88b9508, event=@0xbfffef30)
at src/common/event.cpp:1169
tableId1 = 6129
tableId2 = -1
#12 0x406b08b4 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) (this=0x85dd220, event=@0xbfffef30, self=0x88b9508) at src/common/event.cpp:837
n = 0
eventEntryTable = (const wxEventTableEntryPointerArray &) @0x8a85664: { = {m_nSize = 1, m_nCount = 1, m_pItems = 0x8a85c70}, }
count = 1
eventType = 10084
eTTnode = (EventTypeTable * const) 0x8a85660
#13 0x406b1a8e in wxEvtHandler::ProcessEvent(wxEvent&) (this=0x88b9508, event=@0xbfffef30) at src/common/event.cpp:1231
No locals.
#14 0x4046850d in wxTimerBase::Notify() (this=0x8aa4440) at src/common/timercmn.cpp:61
event = { = { = {_vptr.wxObject = 0x83f0308, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x0}, m_eventObject = 0x8aa4440,
m_eventType = 10084, m_timeStamp = 0, m_id = 6129, m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
m_className = 0x406f03e0, m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0x4073744c, m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x40737914,
static sm_classTable = 0x85de060}}, m_interval = 100, static ms_classInfo = {m_className = 0x404e5a5c, m_objectSize = 40,
m_objectConstructor = 0x40468314 , m_baseInfo1 = 0x4073792c, m_baseInfo2 = 0x0, static sm_first = 0x83f1950, m_next = 0x4056cc28,
static sm_classTable = 0x85de060}}
#15 0x403664c4 in timeout_callback (data=0x8aa4440) at src/gtk/timer.cpp:47
timer = (wxTimer *) 0x8aa4440
#16 0x40ce4a9f in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#17 0x08aa4440 in ?? ()
No symbol table info available.
#18 0x40d399bc in g_idle_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#19 0x085fe2cc in ?? ()
No symbol table info available.
Crashing the second time:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 2308)]
0x404772ab in wxWindowBase::GetSize() const (this=0x8ca8d98) at window.h:267
267 window.h: No such file or directory.
in window.h
bt
(gdb) bt
#0 0x404772ab in wxWindowBase::GetSize() const (this=0x8ca8d98) at window.h:267
#1 0x401f58c8 in wxTaskBarIconArea::SetTrayIcon(wxBitmap const&) (this=0x8ca8d98, bmp=@0xbfffec40) at src/unix/taskbarx11.cpp:147
#2 0x401f62f4 in wxTaskBarIcon::SetIcon(wxIcon const&, wxString const&) (this=0x8aacfc8, icon=@0x8aad020, tooltip=@0x8aad168) at src/unix/taskbarx11.cpp:295
#3 0x081eb97c in CMuleTrayIcon::UpdateTray() (this=0x8aacfc8) at MuleTrayIcon.cpp:191
#4 0x081eb922 in CMuleTrayIcon::SetTrayIcon(int, unsigned) (this=0x8aacfc8, Icon=2, percent=0) at MuleTrayIcon.cpp:174
#5 0x082d8c5b in CamuleDlg::UpdateTrayIcon(int) (this=0x88b94f0, percent=0) at amuleDlg.cpp:747
#6 0x082d8511 in CamuleDlg::ShowTransferRate() (this=0x88b94f0) at amuleDlg.cpp:688
#7 0x082d9cdf in CamuleDlg::OnGUITimer(wxTimerEvent&) (this=0x88b94f0) at amuleDlg.cpp:1024
#8 0x40610f1a in wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const (this=0x85fe4e8, handler=0x88b94f0, func=
{__pfn = 0x82d9b44 , __delta = 0}, event=@0xbfffef40) at src/common/appbase.cpp:305
#9 0x406b1876 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) (entry=@0x85dd0b0, handler=0x88b94f0, event=@0xbfffef40)
at src/common/event.cpp:1169
#10 0x406b08b4 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) (this=0x85dcf40, event=@0xbfffef40, self=0x88b94f0) at src/common/event.cpp:837
#11 0x406b1a8e in wxEvtHandler::ProcessEvent(wxEvent&) (this=0x88b94f0, event=@0xbfffef40) at src/common/event.cpp:1231
#12 0x4046850d in wxTimerBase::Notify() (this=0x8aa4320) at src/common/timercmn.cpp:61
#13 0x403664c4 in timeout_callback (data=0x8aa4320) at src/gtk/timer.cpp:47
#14 0x40ce4a9f in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0
#15 0x08aa4320 in ?? ()
#16 0x40d399bc in g_idle_funcs () from /usr/lib/libglib-2.0.so.0
#17 0x085fe2cc in ?? ()
Full bt:
(gdb) bt full
#0 0x404772ab in wxWindowBase::GetSize() const (this=0x8ca8d98) at window.h:267
w = 1080951472
h = 306
#1 0x401f58c8 in wxTaskBarIconArea::SetTrayIcon(wxBitmap const&) (this=0x8ca8d98, bmp=@0xbfffec40) at src/unix/taskbarx11.cpp:147
winsize = {x = -1073746936, y = 1077153527}
bmpsize = {x = -1073746880, y = 145412128}
iconsize = {x = -1073746936, y = 1077167734}
region = { = { = {_vptr.wxObject = 0xbfffec40, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x40562b24}, m_visible = 232,
static ms_classInfo = {m_className = 0x404bad10, m_objectSize = 12, m_objectConstructor = 0x4035e5d4 , m_baseInfo1 = 0x4073744c,
m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40569b10, static sm_classTable = 0x85de060}}, static ms_classInfo = {m_className = 0x404bb47c,
m_objectSize = 12, m_objectConstructor = 0x40362490 , m_baseInfo1 = 0x40569af8, m_baseInfo2 = 0x0, static sm_first = 0x83f1670,
m_next = 0x40569c60, static sm_classTable = 0x85de060}}
#2 0x401f62f4 in wxTaskBarIcon::SetIcon(wxIcon const&, wxString const&) (this=0x8aacfc8, icon=@0x8aad020, tooltip=@0x8aad168) at src/unix/taskbarx11.cpp:295
bmp = { = { = {_vptr.wxObject = 0x40547de8, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x8aad270}, m_visible = false,
static ms_classInfo = {m_className = 0x404bad10, m_objectSize = 12, m_objectConstructor = 0x4035e5d4 , m_baseInfo1 = 0x4073744c,
m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40569b10, static sm_classTable = 0x85de060}}, static ms_classInfo = {m_className = 0x404b7bb4,
m_objectSize = 12, m_objectConstructor = 0x40340e3c , m_baseInfo1 = 0x40569af8, m_baseInfo2 = 0x0, static sm_first = 0x83f1670,
m_next = 0x40569734, static sm_classTable = 0x85de060}}
#3 0x081eb97c in CMuleTrayIcon::UpdateTray() (this=0x8aacfc8) at MuleTrayIcon.cpp:191
No locals.
#4 0x081eb922 in CMuleTrayIcon::SetTrayIcon(int, unsigned) (this=0x8aacfc8, Icon=2, percent=0) at MuleTrayIcon.cpp:174
Bar_xSize = 5
Bar_xPos = 16
Bar_yPos = 0
Bar_ySize = 20
NewSize = 0
#5 0x082d8c5b in CamuleDlg::UpdateTrayIcon(int) (this=0x88b94f0, percent=0) at amuleDlg.cpp:747
No locals.
#6 0x082d8511 in CamuleDlg::ShowTransferRate() (this=0x88b94f0) at amuleDlg.cpp:688
kBpsUp = 0
kBpsDown = 0
buffer = { = {static npos = 4294967195, m_pchData = 0x8d44ad4}, }
label = (class wxStaticText *) 0x89c6d70
percentDown = 0
buffer2 = { = {static npos = 4294967195, m_pchData = 0x406e4690}, }
bmp = (class wxStaticBitmap *) 0x0
#7 0x082d9cdf in CamuleDlg::OnGUITimer(wxTimerEvent&) (this=0x88b94f0) at amuleDlg.cpp:1024
msPrev1 = 16074
msPrev5 = 16901
msPrevGraph = 15065
msPrevStats = 0
msPrevHist = 16000
msCur = 16901
bStatsVisible = false
msGraphUpdate = 3000
sStatsUpdate = 5
#8 0x40610f1a in wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const (this=0x85fe4e8, handler=0x88b94f0, func=
{__pfn = 0x82d9b44 , __delta = 0}, event=@0xbfffef40) at src/common/appbase.cpp:305
No locals.
#9 0x406b1876 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) (entry=@0x85dd0b0, handler=0x88b94f0, event=@0xbfffef40)
at src/common/event.cpp:1169
tableId1 = 6129
tableId2 = -1
#10 0x406b08b4 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) (this=0x85dcf40, event=@0xbfffef40, self=0x88b94f0) at src/common/event.cpp:837
n = 0
eventEntryTable = (const wxEventTableEntryPointerArray &) @0x8a85544: { = {m_nSize = 1, m_nCount = 1, m_pItems = 0x8a85b50}, }
count = 1
eventType = 10084
eTTnode = (EventTypeTable * const) 0x8a85540
#11 0x406b1a8e in wxEvtHandler::ProcessEvent(wxEvent&) (this=0x88b94f0, event=@0xbfffef40) at src/common/event.cpp:1231
No locals.
#12 0x4046850d in wxTimerBase::Notify() (this=0x8aa4320) at src/common/timercmn.cpp:61
event = { = { = {_vptr.wxObject = 0x83f0028, static ms_classInfo = {m_className = 0x406e05f0, m_objectSize = 8, m_objectConstructor = 0,
m_baseInfo1 = 0x0, m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40737488, static sm_classTable = 0x85de060}, m_refData = 0x0}, m_eventObject = 0x8aa4320,
m_eventType = 10084, m_timeStamp = 0, m_id = 6129, m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false, m_isCommandEvent = false, static ms_classInfo = {
m_className = 0x406f03e0, m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0x4073744c, m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x40737914,
static sm_classTable = 0x85de060}}, m_interval = 100, static ms_classInfo = {m_className = 0x404e5a5c, m_objectSize = 40,
m_objectConstructor = 0x40468314 , m_baseInfo1 = 0x4073792c, m_baseInfo2 = 0x0, static sm_first = 0x83f1670, m_next = 0x4056cc28,
static sm_classTable = 0x85de060}}
#13 0x403664c4 in timeout_callback (data=0x8aa4320) at src/gtk/timer.cpp:47
timer = (wxTimer *) 0x8aa4320
#14 0x40ce4a9f in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#15 0x08aa4320 in ?? ()
No symbol table info available.
#16 0x40d399bc in g_idle_funcs () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#17 0x085fe2cc in ?? ()
No symbol table info available.