aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: SIGSEGV while downloading server list  (Read 2132 times)

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
SIGSEGV while downloading server list
« on: February 11, 2006, 04:31:42 AM »

Hi,

my aMule build crashes while downloading the server list, but only if I'm offline while trying to download it. To reproduce:

1. Make sure you're offline
2. Start aMule
3. Click the server list download button - sometimes it's necessary to do it multiple times

Reproducible with wxGTK 2.6.2 and with current wxWidgets CVS.

SuSE 10.0
wxGTK CVS 20060206
aMule CVS 20060205
GTK 2.8.3
GCC 4.0.2
GDB 6.3

wxGTK:

./configure \
 --prefix=/opt/wxGTK \
 --disable-optimise \
 --enable-debug \
 --enable-unicode \
 --without-libpng \
 --without-libjpeg \
 --without-libtiff \
 --without-libxpm \
 --without-libmspack \
 --without-sdl \
 --without-gnomeprint \
 --without-hildon \
 --without-opengl \
 --without-dmalloc \
 --with-regex \
 --with-zlib \
 --without-odbc \
 --without-expat

aMule:

./configure \
 --prefix=/opt/aMule \
 --disable-optimize \
 --enable-debug \
 --enable-monolithic \
 --disable-amule-daemon \
 --disable-amulecmd \
 --disable-webserver \
 --disable-amule-gui \
 --disable-cas \
 --disable-wxcas \
 --disable-ed2k \
 --disable-alc \
 --disable-alcc

Backtrace:
Code: [Select]
$ gdb --args /opt/aMule/bin/amule --I-am-scared-of-no-dangerous-code
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i586-suse-linux"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) run
Starting program: /opt/aMule/bin/amule --I-am-scared-of-no-dangerous-code
[Thread debugging using libthread_db enabled]
[New Thread 1092961760 (LWP 19418)]
Initialising aMule
Checking if there is an instance already running...
No other instances are running.
[New Thread 1109392304 (LWP 19424)]
Loading temp files from /home/user/.aMule/Temp.

All PartFiles Loaded.
ListenSocket: Ok.

External connections disabled in config file
*** Server UDP socket (TCP+3) at 0.0.0.0:4665
*** TCP socket (TCP) listening on 0.0.0.0:4662
*** Client UDP socket (extended eMule) at 0.0.0.0:4672
[New Thread 1111493552 (LWP 19425)]
[New Thread 1113594800 (LWP 19426)]
[Thread 1111493552 (zombie) exited]
[New Thread 1116339120 (LWP 19439)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[Thread 1116339120 (zombie) exited]
[New Thread 1118440368 (LWP 19440)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[Thread 1118440368 (zombie) exited]
[New Thread 1120541616 (LWP 19441)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[Thread 1120541616 (zombie) exited]
[New Thread 1122798512 (LWP 19442)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[Thread 1122798512 (zombie) exited]
[New Thread 1126173616 (LWP 19443)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[New Thread 1128274864 (LWP 19444)]
HTTP download thread started
Host: [URL]www.gruk.org:80[/URL]
URL: [URL]http://www.gruk.org/server.met.gz[/URL]
Response: 0 (Error: 3)
WARNING: Void response on stream creation
HTTP download thread ended
[Thread 1128274864 (zombie) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1092961760 (LWP 19418)]
0x40e27ff0 in g_signal_handlers_destroy ()
   from /opt/gnome/lib/libgobject-2.0.so.0
(gdb) bt
#0  0x40e27ff0 in g_signal_handlers_destroy ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#1  0x40e13815 in g_object_interface_list_properties ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#2  0x40e146ab in g_object_unref () from /opt/gnome/lib/libgobject-2.0.so.0
#3  0x4041bbff in ~wxGtkIMData (this=0x8ae6630) at window.cpp:955
#4  0x40417a88 in ~wxWindow (this=0x8bd0a28) at window.cpp:2639
#5  0x40508114 in ~wxTopLevelWindowBase (this=0x8bd0a28) at toplvcmn.cpp:72
#6  0x4040e1ac in ~wxTopLevelWindowGTK (this=0x8bd0a28) at toplevel.cpp:692
#7  0x081474b8 in ~wxTopLevelWindow (this=0x8bd0a28) at toplevel.h:288
#8  0x081474f0 in ~wxDialogBase (this=0x8bd0a28) at dialog.h:43
#9  0x08147528 in ~wxDialog (this=0x8bd0a28) at dialog.h:48
#10 0x0814788a in ~CHTTPDownloadDialog (this=0x8bd0a28) at HTTPDownload.cpp:88
#11 0x4048ea93 in wxAppBase::DeletePendingObjects (this=0x87798f8)
    at appcmn.cpp:370
#12 0x4048f290 in wxAppBase::OnIdle (this=0x87798f8) at appcmn.cpp:445
#13 0x406c81f4 in wxAppConsole::HandleEvent (this=0x87798f8,
    handler=0x87798f8, func=
      {__pfn = 0x4048f25a , __delta = 0},
    event=@0xbfa53c40) at appbase.cpp:320
#14 0x4076c760 in wxEvtHandler::ProcessEventIfMatches (entry=@0x4062f8a0,
    handler=0x87798f8, event=@0xbfa53c40) at event.cpp:1178
#15 0x4076cb4e in wxEventHashTable::HandleEvent (this=0x8747e70,
---Type to continue, or q to quit---
    event=@0xbfa53c40, self=0x87798f8) at event.cpp:855
#16 0x4076dc05 in wxEvtHandler::ProcessEvent (this=0x87798f8,
    event=@0xbfa53c40) at event.cpp:1240
#17 0x4048f0e8 in wxAppBase::ProcessIdle (this=0x87798f8) at appcmn.cpp:396
#18 0x403de5b2 in wxapp_idle_callback () at app.cpp:254
#19 0x41085941 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
#20 0x4108335c in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#21 0x410867cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#22 0x41086ae7 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
#23 0x40b59861 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#24 0x403ff35d in wxEventLoop::Run (this=0x8b3e440) at evtloop.cpp:73
#25 0x4048ed63 in wxAppBase::MainLoop (this=0x87798f8) at appcmn.cpp:265
#26 0x4048eef5 in wxAppBase::OnRun (this=0x87798f8) at appcmn.cpp:320
#27 0x407070b9 in wxEntry (argc=@0xbfa53f40, argv=0x8768010) at init.cpp:442
#28 0x40707192 in wxEntry (argc=@0xbfa53f40, argv=0xbfa53fb4) at init.cpp:454
#29 0x081ee675 in main (argc=2, argv=0xbfa53fb4) at amule-gui.cpp:107
(gdb) bt full

#0  0x40e27ff0 in g_signal_handlers_destroy ()
   from /opt/gnome/lib/libgobject-2.0.so.0
No symbol table info available.
#1  0x40e13815 in g_object_interface_list_properties ()
   from /opt/gnome/lib/libgobject-2.0.so.0
No symbol table info available.
#2  0x40e146ab in g_object_unref () from /opt/gnome/lib/libgobject-2.0.so.0
No symbol table info available.
#3  0x4041bbff in ~wxGtkIMData (this=0x8ae6630) at window.cpp:955
No locals.
#4  0x40417a88 in ~wxWindow (this=0x8bd0a28) at window.cpp:2639
No locals.
#5  0x40508114 in ~wxTopLevelWindowBase (this=0x8bd0a28) at toplvcmn.cpp:72
No locals.
#6  0x4040e1ac in ~wxTopLevelWindowGTK (this=0x8bd0a28) at toplevel.cpp:692
No locals.
#7  0x081474b8 in ~wxTopLevelWindow (this=0x8bd0a28) at toplevel.h:288
No locals.
#8  0x081474f0 in ~wxDialogBase (this=0x8bd0a28) at dialog.h:43
No locals.
#9  0x08147528 in ~wxDialog (this=0x8bd0a28) at dialog.h:48
No locals.
#10 0x0814788a in ~CHTTPDownloadDialog (this=0x8bd0a28) at HTTPDownload.cpp:88
---Type to continue, or q to quit---
No locals.
#11 0x4048ea93 in wxAppBase::DeletePendingObjects (this=0x87798f8)
    at appcmn.cpp:370
        obj = (class wxObject *) 0x8bd0a28
        node = (class wxObjectListNode *) 0x8a52850
#12 0x4048f290 in wxAppBase::OnIdle (this=0x87798f8) at appcmn.cpp:445
No locals.
#13 0x406c81f4 in wxAppConsole::HandleEvent (this=0x87798f8,
    handler=0x87798f8, func=
      {__pfn = 0x4048f25a , __delta = 0},
    event=@0xbfa53c40) at appbase.cpp:320
No locals.
#14 0x4076c760 in wxEvtHandler::ProcessEventIfMatches (entry=@0x4062f8a0,
    handler=0x87798f8, event=@0xbfa53c40) at event.cpp:1178
        tableId1 = -1
        tableId2 = -1
#15 0x4076cb4e in wxEventHashTable::HandleEvent (this=0x8747e70,
    event=@0xbfa53c40, self=0x87798f8) at event.cpp:855
        n = 0
        eventEntryTable = (
    const wxEventTableEntryPointerArray &) @0x89e1974: { = {m_nSize = 1, m_nCount = 1, m_pItems = 0x89e1a60}, }
        count = 1
---Type to continue, or q to quit---
        eventType = 10001
        eTTnode = (wxEventHashTable::EventTypeTable * const) 0x89e1970
#16 0x4076dc05 in wxEvtHandler::ProcessEvent (this=0x87798f8,
    event=@0xbfa53c40) at event.cpp:1240
No locals.
#17 0x4048f0e8 in wxAppBase::ProcessIdle (this=0x87798f8) at appcmn.cpp:396
        event = { = { = {_vptr.wxObject = 0x4060d1c8,
      static ms_classInfo = {m_className = 0x4079e0cc, m_objectSize = 8,
        m_objectConstructor = 0, m_baseInfo1 = 0x0, m_baseInfo2 = 0x0,
        static sm_first = 0x855f208, m_next = 0x407fa910,
        static sm_classTable = 0x874d008}, m_refData = 0x0},
    m_eventObject = 0x87798f8, m_eventType = 10001, m_timeStamp = 0, m_id = 0,
    m_callbackUserData = 0x0, m_propagationLevel = 0, m_skipped = false,
    m_isCommandEvent = false, static ms_classInfo = {m_className = 0x407b15d0,
      m_objectSize = 36, m_objectConstructor = 0, m_baseInfo1 = 0x407fa8f8,
      m_baseInfo2 = 0x0, static sm_first = 0x855f208, m_next = 0x407facd0,
      static sm_classTable = 0x874d008}}, m_requestMore = false,
  static sm_idleMode = wxIDLE_PROCESS_SPECIFIED, static ms_classInfo = {
    m_className = 0x40559f90, m_objectSize = 36,
    m_objectConstructor = 0x403c9b22 ,
    m_baseInfo1 = 0x407facb8, m_baseInfo2 = 0x0, static sm_first = 0x855f208,
    m_next = 0x4062f86c, static sm_classTable = 0x874d008}}
        needMore = false
---Type to continue, or q to quit---
        node = (class wxWindowListNode *) 0x0
#18 0x403de5b2 in wxapp_idle_callback () at app.cpp:254
No locals.
#19 0x41085941 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#20 0x4108335c in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#21 0x410867cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#22 0x41086ae7 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#23 0x40b59861 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#24 0x403ff35d in wxEventLoop::Run (this=0x8b3e440) at evtloop.cpp:73
        activate = {m_evtLoopOld = 0x0}
        exitcode = 1078523844
#25 0x4048ed63 in wxAppBase::MainLoop (this=0x87798f8) at appcmn.cpp:265
        mainLoop = { = {m_ptr = 0x8b3e440}, m_pp = 0x8779938,
  m_pOld = 0x0}
#26 0x4048eef5 in wxAppBase::OnRun (this=0x87798f8) at appcmn.cpp:320
No locals.
#27 0x407070b9 in wxEntry (argc=@0xbfa53f40, argv=0x8768010) at init.cpp:442
---Type to continue, or q to quit---
        callOnExit = {}
        cleanupOnExit = {}
#28 0x40707192 in wxEntry (argc=@0xbfa53f40, argv=0xbfa53fb4) at init.cpp:454
No locals.
#29 0x081ee675 in main (argc=2, argv=0xbfa53fb4) at amule-gui.cpp:107
No locals.
(gdb) thread apply all bt

Thread 9 (Thread 1126173616 (LWP 19443)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x4003313e in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0
#2  0x4002fe35 in _L_mutex_lock_36 () from /lib/tls/libpthread.so.0
#3  0x00002801 in ?? () at formatter.h:190
#4  0x407df4cc in ?? () from /opt/wxGTK/lib/libwx_baseud-2.7.so.0
#5  0x00000000 in ?? ()
#6  0x00000000 in ?? ()
#7  0x43200378 in ?? ()
#8  0x40767a31 in wxMutexInternal::Lock (this=0x8b0e078) at threadpsx.cpp:242
#9  0x40767a31 in wxMutexInternal::Lock (this=0x8b0e078) at threadpsx.cpp:242
#10 0x40767b59 in wxMutex::Lock (this=0x8b0baf0) at thrimpl.cpp:44
#11 0x406c9c4f in wxCriticalSection::Enter (this=0x8b0baf0) at thread.h:271
#12 0x4076a01f in wxThread::Exit (this=0x8b0bae8, status=0x0)
    at threadpsx.cpp:1489
#13 0x4076a36b in wxThreadInternal::PthreadStart (thread=0x8b0bae8)
    at threadpsx.cpp:803
#14 0x4076a3d3 in wxPthreadStart (ptr=0x8b0bae8) at threadpsx.cpp:712
#15 0x4002e297 in start_thread () from /lib/tls/libpthread.so.0
#16 0x409c637e in clone () from /lib/tls/libc.so.6
#17 0x43200bb0 in ?? ()

---Type to continue, or q to quit---
Thread 4 (Thread 1113594800 (LWP 19426)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x40030cec in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
#2  0x40768138 in wxConditionInternal::WaitTimeout (this=0x8b3e880,
    milliseconds=89) at threadpsx.cpp:399
#3  0x40768217 in wxCondition::WaitTimeout (this=0x8b3e84c, milliseconds=89)
    at thrimpl.cpp:257
#4  0x4076882d in wxSemaphoreInternal::WaitTimeout (this=0x8b3e848,
    milliseconds=89) at threadpsx.cpp:546
#5  0x4076b7eb in wxSemaphore::WaitTimeout (this=0x8ae5178, milliseconds=89)
    at thrimpl.cpp:321
#6  0x082f4bd1 in CTimerThread::Entry (this=0x8ae5158) at Timer.cpp:63
#7  0x4076a27d in wxThreadInternal::PthreadStart (thread=0x8ae5158)
    at threadpsx.cpp:760
#8  0x4076a3d3 in wxPthreadStart (ptr=0x8ae5158) at threadpsx.cpp:712
#9  0x4002e297 in start_thread () from /lib/tls/libpthread.so.0
#10 0x409c637e in clone () from /lib/tls/libc.so.6
#11 0x42601bb0 in ?? ()

Thread 2 (Thread 1109392304 (LWP 19424)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x40033c26 in __nanosleep_nocancel () from /lib/tls/libpthread.so.0
---Type to continue, or q to quit---
#2  0x40770c0a in wxMicroSleep (microseconds=1000) at utilsunx.cpp:187
#3  0x40770c4d in wxMilliSleep (milliseconds=1) at utilsunx.cpp:208
#4  0x4076902c in wxThread::Sleep (milliseconds=1) at threadpsx.cpp:980
#5  0x08198270 in UploadBandwidthThrottler::Entry (this=0x8b349f0)
    at UploadBandwidthThrottler.cpp:319
#6  0x4076a27d in wxThreadInternal::PthreadStart (thread=0x8b349f0)
    at threadpsx.cpp:760
#7  0x4076a3d3 in wxPthreadStart (ptr=0x8b349f0) at threadpsx.cpp:712
#8  0x4002e297 in start_thread () from /lib/tls/libpthread.so.0
#9  0x409c637e in clone () from /lib/tls/libc.so.6
#10 0x421ffbb0 in ?? ()

Thread 1 (Thread 1092961760 (LWP 19418)):
#0  0x40e27ff0 in g_signal_handlers_destroy ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#1  0x40e13815 in g_object_interface_list_properties ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#2  0x40e146ab in g_object_unref () from /opt/gnome/lib/libgobject-2.0.so.0
#3  0x4041bbff in ~wxGtkIMData (this=0x8ae6630) at window.cpp:955
#4  0x40417a88 in ~wxWindow (this=0x8bd0a28) at window.cpp:2639
#5  0x40508114 in ~wxTopLevelWindowBase (this=0x8bd0a28) at toplvcmn.cpp:72
#6  0x4040e1ac in ~wxTopLevelWindowGTK (this=0x8bd0a28) at toplevel.cpp:692
#7  0x081474b8 in ~wxTopLevelWindow (this=0x8bd0a28) at toplevel.h:288
---Type to continue, or q to quit---
#8  0x081474f0 in ~wxDialogBase (this=0x8bd0a28) at dialog.h:43
#9  0x08147528 in ~wxDialog (this=0x8bd0a28) at dialog.h:48
#10 0x0814788a in ~CHTTPDownloadDialog (this=0x8bd0a28) at HTTPDownload.cpp:88
#11 0x4048ea93 in wxAppBase::DeletePendingObjects (this=0x87798f8)
    at appcmn.cpp:370
#12 0x4048f290 in wxAppBase::OnIdle (this=0x87798f8) at appcmn.cpp:445
#13 0x406c81f4 in wxAppConsole::HandleEvent (this=0x87798f8,
    handler=0x87798f8, func=
      {__pfn = 0x4048f25a , __delta = 0},
    event=@0xbfa53c40) at appbase.cpp:320
#14 0x4076c760 in wxEvtHandler::ProcessEventIfMatches (entry=@0x4062f8a0,
    handler=0x87798f8, event=@0xbfa53c40) at event.cpp:1178
#15 0x4076cb4e in wxEventHashTable::HandleEvent (this=0x8747e70,
    event=@0xbfa53c40, self=0x87798f8) at event.cpp:855
#16 0x4076dc05 in wxEvtHandler::ProcessEvent (this=0x87798f8,
    event=@0xbfa53c40) at event.cpp:1240
#17 0x4048f0e8 in wxAppBase::ProcessIdle (this=0x87798f8) at appcmn.cpp:396
#18 0x403de5b2 in wxapp_idle_callback () at app.cpp:254
#19 0x41085941 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
#20 0x4108335c in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#21 0x410867cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#22 0x41086ae7 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
---Type to continue, or q to quit---
#23 0x40b59861 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#24 0x403ff35d in wxEventLoop::Run (this=0x8b3e440) at evtloop.cpp:73
#25 0x4048ed63 in wxAppBase::MainLoop (this=0x87798f8) at appcmn.cpp:265
#26 0x4048eef5 in wxAppBase::OnRun (this=0x87798f8) at appcmn.cpp:320
#27 0x407070b9 in wxEntry (argc=@0xbfa53f40, argv=0x8768010) at init.cpp:442
#28 0x40707192 in wxEntry (argc=@0xbfa53f40, argv=0xbfa53fb4) at init.cpp:454
#29 0x081ee675 in main (argc=2, argv=0xbfa53fb4) at amule-gui.cpp:107
(gdb) q
The program is running.  Exit anyway? (y or n) y
Logged