Hi, Stangely, last time I checked it with my LFS machine, and there is no such problem. However, today I checked with Redhat (glib 2.4.7, gtk 2.4.13), Ubuntu and Debian (both 2.8.x), and it 100% reproduces. I have enclosed a detailed backtrace log.
Cai Qian
Starting program: /home/caiqian/packages/d4x-2.5.6/main/nt -w ftp://a7:[EMAIL PROTECTED]/b/ba9a70b8155812b821aaf1825d4fb420/AB_091__E_.part09.rar [Thread debugging using libthread_db enabled] [New Thread 16384 (LWP 2333)] [New Thread 32769 (LWP 2336)] [New Thread 16386 (LWP 2337)] - 19:40:47 31 12 2005 ---------------------------------------- ? 19:40:47 31 12 2005 WebDownloader for X 2.5.6 [New Thread 32771 (LWP 2338)] [New Thread 49156 (LWP 2339)] ? 19:40:47 31 12 2005 Loading FTP-Search engines ? 19:40:47 31 12 2005 Normally started Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 32771 (LWP 2338)] 0x407e0413 in strlen () from /usr/lib/debug/libc.so.6 Current language: auto; currently c (gdb) bt #0 0x407e0413 in strlen () from /usr/lib/debug/libc.so.6 #1 0x406f5a2f in std::string::compare () from /usr/lib/libstdc++.so.6 #2 0x080577a0 in std::operator==<char, std::char_traits<char>, std::allocator<char> > ([EMAIL PROTECTED], __rhs=0x0) at basic_string.h:2158 #3 0x080a8f09 in tFtpDownload::get_size (this=0x819ef38) at ftpd.cc:487 #4 0x080850d3 in tDownload::download_ftp (this=0x819e640) at dlist.cc:1630 #5 0x0808a412 in download_last (nothing=0x819e640) at main.cc:1867 #6 0x4001df4c in pthread_start_thread (arg=0xbf5ffbe0) at manager.c:310 #7 0x4001dfda in pthread_start_thread_event (arg=0xbf5ffbe0) at manager.c:334 #8 0x4083298a in clone () from /usr/lib/debug/libc.so.6 (gdb) thread apply all bt full Thread 5 (Thread 49156 (LWP 2339)): #0 0x4082bc81 in select () from /usr/lib/debug/libc.so.6 No locals. #1 0x40027ff4 in ?? () from /usr/lib/debug/libpthread.so.0 No symbol table info available. #2 0x081639f0 in ?? () No symbol table info available. #3 0xbf3ff800 in ?? () No symbol table info available. #4 0x00000000 in ?? () No symbol table info available. Thread 4 (Thread 32771 (LWP 2338)): #0 0x407e0413 in strlen () from /usr/lib/debug/libc.so.6 malloc_trace_buffer = 0x0 mallstream = (FILE *) 0x0 lock = {__m_reserved = 0, __m_count = 0, __m_owner = 0x0, __m_kind = 0, __m_lock = {__status = 0, __spinlock = 0}} tr_old_free_hook = (void (*)(void *, const void *)) 0 tr_old_memalign_hook = (void *(*)(size_t, size_t, const void *)) 0 mallenv = "MALLOC_TRACE" tr_old_realloc_hook = (void *(*)(void *, size_t, const void *)) 0 tr_old_malloc_hook = (void *(*)(size_t, const void *)) 0 mallwatch = (void *) 0x0 #1 0x406f5a2f in std::string::compare () from /usr/lib/libstdc++.so.6 No symbol table info available. #2 0x080577a0 in std::operator==<char, std::char_traits<char>, std::allocator<char> > ([EMAIL PROTECTED], __rhs=0x0) at basic_string.h:2158 No locals. #3 0x080a8f09 in tFtpDownload::get_size (this=0x819ef38) at ftpd.cc:487 sz = 0 a = 0 #4 0x080850d3 in tDownload::download_ftp (this=0x819e640) at dlist.cc:1630 size = 578426686599592584 s = (class tSocket *) 0x0 CurentSize = 4612389654329556992 SIZE_FOR_DOWNLOAD = 135915072 #5 0x0808a412 in download_last (nothing=0x819e640) at main.cc:1867 addr = (d4x::URL *) 0x819e688 what = (class tDownload *) 0x819e640 #6 0x4001df4c in pthread_start_thread (arg=0xbf5ffbe0) at manager.c:310 request = {req_thread = 0x0, req_kind = REQ_CREATE, req_args = {create = {attr = 0x0, fn = 0, arg = 0x0, mask = { __val = {0 <repeats 27 times>, 1073884766, 1073885054, 0, 0, 0}}}, free = {thread_id = 0}, exit = {code = 0}, post = 0x0, for_each = {fn = 0, arg = 0x0}}} outcome = <value optimized out> #7 0x4001dfda in pthread_start_thread_event (arg=0xbf5ffbe0) at manager.c:334 No locals. #8 0x4083298a in clone () from /usr/lib/debug/libc.so.6 fstab_state = {fs_fp = 0x0, fs_buffer = 0x0, fs_mntres = {mnt_fsname = 0x0, mnt_dir = 0x0, mnt_type = 0x0, mnt_opts = 0x0, mnt_freq = 0, mnt_passno = 0}, fs_ret = {fs_spec = 0x0, fs_file = 0x0, fs_vfstype = 0x0, fs_mntops = 0x0, fs_type = 0x0, fs_freq = 0, fs_passno = 0}} __elf_set___libc_subfreeres_element_fstab_free__ = (const void *) 0x4086aa10 Thread 3 (Thread 16386 (LWP 2337)): #0 0x40021184 in __pthread_sigsuspend (set=0x40027ff4) at ../linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c:54 resultvar = 4294967292 #1 0x4001ff59 in __pthread_wait_for_restart_signal (self=0xbf7ffbe0) at pthread.c:1216 mask = {__val = {18946, 0, 0, 0, 0, 0, 895, 18350080, 1081883292, 115, 135569684, 123, 8064, 65535, 0, 1073884350, 0, 0, 0, 1073844060, 1073905652, 135674016, 135674096, 3212835124, 1073871588, 135674032, 1073884766, 1083541168, 1073871278, 1, 0, 7}} #2 0x4001d57c in __pthread_cond_wait (cond=0x81638f0, mutex=0x81638a0) at restart.h:34 self = (volatile pthread_descr) 0xbf7ffbe0 extr = {pu_object = 0x81638f0, pu_extricate_func = 0x4001d670 <cond_extricate_func>} already_canceled = 0 spurious_wakeup_count = 0 #3 0x0807a1db in d4xSndServer::run (this=0x8163898) at sndserv.cc:527 tmpqueue = {<std::_List_base<d4x::SndEvent,std::allocator<d4x::SndEvent> >> = { _M_impl = {<std::allocator<std::_List_node<d4x::SndEvent> >> = {<__gnu_cxx::new_allocator<std::_List_node<d4x::SndEvent> >> = {<No data fields>}, <No data fields>}, _M_node = {_M_next = 0x0, _M_prev = 0x40027ff4}}}, <No data fields>} #4 0x0807a3a9 in _snd_serv_run_ (serv=0x8163898) at sndserv.cc:451 server = (d4xSndServer *) 0x8163898 oldmask = {__val = {2147483648, 0, 0, 0, 0, 0, 0, 0, 1081605560, 1081573376, 1073831924, 1073836368, 1073836796, 3212835520, 1073786042, 1073836796, 1083541680, 1, 1, 0, 199, 1073849888, 1073880585, 1082712052, 3212835544, 1081714489, 6, 1083787756, 1082713440, 0, 1073905652, 3212835808}} newmask = {__val = {18946, 0 <repeats 31 times>}} #5 0x4001df4c in pthread_start_thread (arg=0xbf7ffbe0) at manager.c:310 request = {req_thread = 0x0, req_kind = REQ_CREATE, req_args = {create = {attr = 0x0, fn = 0, arg = 0x0, mask = { __val = {0 <repeats 23 times>, 1073905652, 1, 1073917120, 3212835768, 1073884766, 3212835808, 1, 1, 0}}}, free = {thread_id = 0}, exit = {code = 0}, post = 0x0, for_each = {fn = 0, arg = 0x0}}} outcome = <value optimized out> #6 0x4001dfda in pthread_start_thread_event (arg=0xbf7ffbe0) at manager.c:334 No locals. #7 0x4083298a in clone () from /usr/lib/debug/libc.so.6 fstab_state = {fs_fp = 0x0, fs_buffer = 0x0, fs_mntres = {mnt_fsname = 0x0, mnt_dir = 0x0, mnt_type = 0x0, mnt_opts = 0x0, mnt_freq = 0, mnt_passno = 0}, fs_ret = {fs_spec = 0x0, fs_file = 0x0, fs_vfstype = 0x0, fs_mntops = 0x0, fs_type = 0x0, fs_freq = 0, fs_passno = 0}} __elf_set___libc_subfreeres_element_fstab_free__ = (const void *) 0x4086aa10 Thread 2 (Thread 32769 (LWP 2336)): #0 0x40829506 in *__GI___poll (fds=0x4088dff4, nfds=1, timeout=2000) at ../sysdeps/unix/sysv/linux/poll.c:86 resultvar = <value optimized out> oldtype = 0 result = <value optimized out> #1 0x4001e514 in __pthread_manager (arg=0x7d0) at manager.c:152 reqfd = 8 ufd = {fd = 8, events = 1, revents = 0} manager_mask = {__val = {4294967279, 4294967294, 4294967295 <repeats 30 times>}} n = <value optimized out> request = {req_thread = 0x400286a0, req_kind = REQ_CREATE, req_args = {create = {attr = 0xbffffa24, fn = 0x809db32 <server_thread_run>, arg = 0x81639f0, mask = {__val = {2147483648, 0, 0, 135915072, 1082712052, 1082712052, 1082712052, 135914152, 1082718752, 135914164, 135915788, 1081359708, 135915676, 1, 0, 3221223896, 134662749, 3221224720, 135174481, 135915508, 134775339, 135915072, 0, 3221224008, 134668099, 135660320, 35, 3221224008, 134668122, 3221224720, 1082309160, 3221223928}}}, free = {thread_id = 3221223972}, exit = { code = -1073743324}, post = 0xbffffa24, for_each = {fn = 0xbffffa24, arg = 0x809db32}}} #2 0x4001ee82 in __pthread_manager_event (arg=0x40028280) at manager.c:249 No locals. #3 0x4083298a in clone () from /usr/lib/debug/libc.so.6 fstab_state = {fs_fp = 0x0, fs_buffer = 0x0, fs_mntres = {mnt_fsname = 0x0, mnt_dir = 0x0, mnt_type = 0x0, mnt_opts = 0x0, mnt_freq = 0, mnt_passno = 0}, fs_ret = {fs_spec = 0x0, fs_file = 0x0, fs_vfstype = 0x0, fs_mntops = 0x0, fs_type = 0x0, fs_freq = 0, fs_passno = 0}} __elf_set___libc_subfreeres_element_fstab_free__ = (const void *) 0x4086aa10 Thread 1 (Thread 16384 (LWP 2333)): #0 0x40025b96 in nanosleep () from /usr/lib/debug/libpthread.so.0 No symbol table info available. #1 0x00000000 in ?? () No symbol table info available. #0 0x407e0413 in strlen () from /usr/lib/debug/libc.so.6