Bug 98934

Summary: kmail crashes when attaching a file from nfs://
Product: [Unmaintained] kmail Reporter: Γιώργος Κυλάφας (Giorgos Kylafas) <gekylafas>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Γιώργος Κυλάφας (Giorgos Kylafas) 2005-02-09 14:24:49 UTC
Version:            (using KDE KDE 3.3.2)
Installed from:    Gentoo Packages
Compiler:          gcc (GCC) 3.3.5  (Gentoo Linux 3.3.5-r1, ssp-3.3.2-3, pie-8.7.7.1) 
OS:                Linux

When I try to attach a file over nfs, KMail crashes. KCrash tells me that KMail crashed and caused a SIGABRT signal, but due to Bug 71764, I have no backtrace for you, even if I have compiled KDE, Qt, X11 and glibc with debug information on (-g) and have not stripped the binaries.

Steps to reproduce:
1. Ctrl+N, for a new composer window
2. Add attachment -> Attach a file...
3. Put an address like this: nfs://server/path/to/file
4. Press button "Add attachment"

This happens with many types (txt, xls) and sizes (<150K) of files, using either port 716 or port 2049.

I also made the following attempts to get a proper backtrace, but all failed:

1. I run KMail from gdb, but gdb exited with the error:
(gdb) run
Starting program: /usr/kde/3.3/bin/kmail
[Thread debugging using libthread_db enabled]
[New Thread -1249226112 (LWP 18929)]
ERROR: Communication problem with kmail, it probably crashed.
Program exited with code 0377.

2. I attached gdb just after running KMail, but gdb would not continue after a point and would produce a message like this:
(gdb) c
Continuing.

Program received signal SIG41, Real-time event 41.
0xffffe410 in ?? ()
(gdb)

3. I attached gdb just before pushing button "Add attachment" (step 4) and I got the same message as above.

4. I attached gdb after the crash, and all I got was:
(gdb) attach 18940
Attaching to program: /usr/kde/3.3/bin/kmail, process 18940
[New Thread -1249226112 (LWP 18940)]
[...]
[Switching to Thread -1249226112 (LWP 18940)]
0xffffe410 in ?? ()
(gdb) bt
#0  0xffffe410 in ?? ()
#1  0xbfffd704 in ?? ()
Comment 1 Γιώργος Κυλάφας (Giorgos Kylafas) 2005-02-11 09:48:52 UTC
I upgraded to gdb-6.2.1 (from 6.0) and managed to get the following backtrace:

Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1249226112 (LWP 10053)]
[KCrash handler]
#7  0xffffe410 in ?? ()
#8  0xbfffddec in ?? ()
#9  0x00000006 in ?? ()
#10 0x00002745 in ?? ()
#11 0xb58d4c31 in raise () from /lib/libc.so.6
#12 0xb58d63d7 in abort () from /lib/libc.so.6
#13 0xb58ce6c8 in __assert_fail () from /lib/libc.so.6
#14 0xb7420288 in DwString (this=0xbfffdfa0, aCstr=0x0) at dwstring.cpp:361
#15 0xb7ded3b7 in KMMessagePart::type (this=0x81345d0) at kmmsgpart.cpp:387
#16 0xb7dec0a2 in KMMessagePart::setCharset (this=0x81345d0, c=@0x0)
    at kmmsgpart.cpp:143
#17 0xb7db005c in KMComposeWin::slotAttachFileResult (this=0x84ecfa0, 
    job=0x85ef430) at kmcomposewin.cpp:2172
#18 0xb7da05fb in KMComposeWin::qt_invoke (this=0x84ecfa0, _id=136, 
    _o=0xbfffe4c0) at kmcomposewin.moc:837
#19 0xb6005ff0 in QObject::activate_signal (this=0x85ef430, clist=0x86a4ba8, 
    o=0xbfffe4c0) at qobject.cpp:2357
#20 0xb6daa2a9 in KIO::Job::result (this=0x85ef430, t0=0x0)
    at jobclasses.moc:156
#21 0xb6d9682c in KIO::Job::emitResult (this=0x85ef430) at job.cpp:208
#22 0xb6d97c64 in KIO::SimpleJob::slotFinished (this=0x85ef430) at job.cpp:525
#23 0xb6d9a400 in KIO::TransferJob::slotFinished (this=0x85ef430)
    at job.cpp:885
#24 0xb6dac76d in KIO::TransferJob::qt_invoke (this=0x85ef430, _id=140440624, 
    _o=0xbfffe870) at jobclasses.moc:1050
#25 0xb6005ff0 in QObject::activate_signal (this=0x8670930, clist=0x8670180, 
    o=0xbfffe870) at qobject.cpp:2357
#26 0xb6005e48 in QObject::activate_signal (this=0x8670930, signal=6)
    at qobject.cpp:2326
#27 0xb6d89023 in KIO::SlaveInterface::finished (this=0x0)
    at slaveinterface.moc:226
#28 0xb6d87c3b in KIO::SlaveInterface::dispatch (this=0x8670930, _cmd=104, 
    rawdata=@0xbfffeb00) at slaveinterface.cpp:255
#29 0xb6d8738b in KIO::SlaveInterface::dispatch (this=0x8670930)
    at slaveinterface.cpp:191
#30 0xb6d84fad in KIO::Slave::gotInput (this=0x8670930) at slave.cpp:294
#31 0xb6d868cb in KIO::Slave::qt_invoke (this=0x8670930, _id=4, _o=0xbfffec70)
    at slave.moc:113
#32 0xb6005ff0 in QObject::activate_signal (this=0x867b848, clist=0x869b478, 
    o=0xbfffec70) at qobject.cpp:2357
#33 0xb60063aa in QObject::activate_signal (this=0x867b848, signal=2, 
    param=20) at qobject.cpp:2450
#34 0xb63e821d in QSocketNotifier::activated (this=0x867b848, t0=20)
    at moc_qsocketnotifier.cpp:85
#35 0xb602af4d in QSocketNotifier::event (this=0x867b848, e=0xbfffef80)
    at qsocketnotifier.cpp:280
#36 0xb5f95b1d in QApplication::internalNotify (this=0xbffff2b0, 
    receiver=0x867b848, e=0xbfffef80) at qapplication.cpp:2635
#37 0xb5f94d60 in QApplication::notify (this=0xbffff2b0, receiver=0x867b848, 
    e=0xbfffef80) at qapplication.cpp:2358
#38 0xb67a748c in KApplication::notify (this=0xbffff2b0, receiver=0x867b848, 
    event=0xbfffef80) at kapplication.cpp:495
#39 0xb78e81b5 in QApplication::sendEvent (receiver=0x0, event=0x2745)
    at qapplication.h:491
#40 0xb5f8112d in QEventLoop::activateSocketNotifiers (this=0x80a6690)
    at qeventloop_unix.cpp:580
#41 0xb5f303d5 in QEventLoop::processEvents (this=0x80a6690, flags=4)
    at qeventloop_x11.cpp:383
#42 0xb5facfd5 in QEventLoop::enterLoop (this=0x80a6690) at qeventloop.cpp:198
#43 0xb5faceee in QEventLoop::exec (this=0x80a6690) at qeventloop.cpp:145
#44 0xb5f95cbf in QApplication::exec (this=0xbffff2b0)
    at qapplication.cpp:2758
#45 0x0804aa48 in main (argc=0, argv=0x0) at main.cpp:108
Comment 2 Till Adam 2005-02-13 12:22:27 UTC
Ingo recently fixed that assert.