Bug 160002 - Kontact crashes on exit when composer was open
Summary: Kontact crashes on exit when composer was open
Status: RESOLVED FIXED
Alias: None
Product: kmail
Classification: Unmaintained
Component: composer (show other bugs)
Version: SVN trunk (KDE 4)
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-28 10:44 UTC by Sergei Beilin
Modified: 2008-04-15 17:48 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergei Beilin 2008-03-28 10:44:12 UTC
Version:            (using Devel)
Installed from:    Compiled sources
Compiler:          gcc (GCC) 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2) 
OS:                Linux

When choosing File->Exit or pressing Ctrl+Q, KMail crashes. The following messages left on the console:

Fatal Error: Accessed global static 'KProtocolManagerPrivate *kProtocolManagerPrivate()' after destruction. Defined at /build/buildd/kde4libs-4.0.2/kio/kio/kprotocolmanager.cpp:60
*** KMail got signal 6 (Crashing)
kmail: /home/kde4-dev/src/KDE/kdepim/kmail/kmkernel.cpp:2052: static KMKernel* KMKernel::self(): Assertion `mySelf' failed.
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = kmail path = <unknown> pid = 7287
Comment 1 Thomas McGuire 2008-03-30 23:44:52 UTC
I haven't seen this crash yet, quitting works fine for me without any crash, both in KMail and in Kontact (as long as the composer wasn't opened).
Comment 2 Oliver Putz 2008-04-08 03:09:37 UTC
I think I just stumbled over this crash (at least this assertion). Kontact (kdepimlibs r794328, kdepim r783669) just crashed with the backtrace below when I tried to close it.

Backtrace:

Application: Kontact (kontact), signal SIGABRT
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 0xb4e7b6d0 (LWP 10115)]
[KCrash handler]
#14 0xffffe410 in __kernel_vsyscall ()
#15 0xb53991f1 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#16 0xb539a9b8 in *__GI_abort () at abort.c:88
#17 0xb53927d5 in *__GI___assert_fail (assertion=0xb3270f3b "mySelf", 
    file=0xb327088c "/var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmkernel.cpp", line=2052, 
    function=0xb3271b80 "static KMKernel* KMKernel::self()") at assert.c:78
#18 0xb30614f7 in KMKernel::self ()
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmkernel.cpp:2052
#19 0xb2f13159 in KMFolderComboBox::createFolderList (this=0x84c9638, 
    names=0xbfcabbf0, folders=0xbfcabbec)
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmfoldercombobox.cpp:65
#20 0xb2f13437 in KMFolderComboBox::getFolder (this=0x84c9638)
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmfoldercombobox.cpp:142
#21 0xb2f583d5 in KMComposeWin::writeConfig (this=0x83fe1a0)
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmcomposewin.cpp:652
#22 0xb2f593d1 in ~KMComposeWin (this=0x83fe1a0)
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kmail/kmcomposewin.cpp:383
#23 0x0804bb26 in qDeleteAll<QList<KMainWindow*>::const_iterator> (
    begin=@0xbfcabd28, end=@0xbfcabd24)
    at /usr/include/qt4/QtCore/qalgorithms.h:352
#24 0x0804bb92 in qDeleteAll<QList<KMainWindow*> > (c=@0xbfcabe64)
    at /usr/include/qt4/QtCore/qalgorithms.h:360
#25 0x0804b4df in main (argc=1, argv=0xbfcabf14)
    at /var/tmp/portage/kde-base/kdepim-9999.4/work/kdepim-9999.4/kontact/src/main.cpp:166
#26 0xb5385fdc in __libc_start_main (main=0x804ac20 <main>, argc=1, 
    ubp_av=0xbfcabf14, init=0x804c200 <__libc_csu_init>, 
    fini=0x804c1f0 <__libc_csu_fini>, rtld_fini=0xb7efa100 <_dl_fini>, 
    stack_end=0xbfcabf0c) at libc-start.c:229
#27 0x0804a851 in _start ()
#0  0xffffe410 in __kernel_vsyscall ()
Comment 3 Oliver Putz 2008-04-08 04:32:26 UTC
I just realized that I indeed had a composer window open when kontact crashed. And indeed, it does not crash when there is no composer window open, but crashes reproducibly when there is one open.
Comment 4 Thomas McGuire 2008-04-15 17:48:25 UTC
SVN commit 797360 by tmcguire:

Don't crash when quitting Kontact if a composer window is open.

BUG:160002


 M  +21 -1     kmkernel.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=797360