Bug 237314 - Changing identity from composer dialogue crashes Kmail
Summary: Changing identity from composer dialogue crashes Kmail
Status: VERIFIED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: composer (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-12 00:27 UTC by Sabine Faure
Modified: 2010-05-17 19:37 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sabine Faure 2010-05-12 00:27:06 UTC
Application: kmail (1.99.0)
KDE Platform Version: 4.4.3 (KDE 4.4.3) (Compiled from sources)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-19-generic x86_64
Distribution: Ubuntu lucid (development branch)

-- Information about the crash:
- Launch Kmail
- Go to Settings menu/Configure Kmail and set up two different identities
- Click on 'New' button
- Go to View menu/all fields
- select a different identity from the one displayed in the combo box

Kmail crashes

Trunk, Svn Rev 1125510

The crash can be reproduced every time.

 -- Backtrace:
Application: KMail (kmail), signal: Aborted
[Current thread is 1 (Thread 0x7fa2d4c77780 (LWP 23632))]

Thread 2 (Thread 0x7fa2ba090710 (LWP 23643)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fa2c77835e0 in WTF::TCMalloc_PageHeap::scavengerThread() () from /d/qt/4/kde-qt/lib/libQtWebKit.so.4
#2  0x00007fa2c77825f6 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /d/qt/4/kde-qt/lib/libQtWebKit.so.4
#3  0x00007fa2ce91d9ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fa2cdecd6dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fa2d4c77780 (LWP 23632)):
[KCrash Handler]
#5  0x00007fa2cde1aa75 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6  0x00007fa2cde1e5c0 in *__GI_abort () at abort.c:92
#7  0x00007fa2cebc9c3d in qt_message_output (msgType=QtFatalMsg, buf=0x1958d88 "ASSERT: \"dynamic_cast<T*>( h )\" in file /d/kde/src/t/kdepimlibs/kmime/kmime_content.h, line 775")
    at global/qglobal.cpp:2250
#8  0x00007fa2cebc9e3f in qt_message (msgType=QtFatalMsg, msg=0x7fa2ced8b988 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff1fd27a90) at global/qglobal.cpp:2296
#9  0x00007fa2cebca6ac in qFatal (msg=0x7fa2ced8b988 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2479
#10 0x00007fa2cebc97cf in qt_assert (assertion=0x7fa2cf37cd46 "dynamic_cast<T*>( h )", file=0x7fa2cf37cd18 "/d/kde/src/t/kdepimlibs/kmime/kmime_content.h", line=775) at global/qglobal.cpp:2013
#11 0x00007fa2cf37471f in KMime::Content::header<KMime::Headers::Organization> (this=0x22b54c0, create=true) at /d/kde/src/t/kdepimlibs/kmime/kmime_content.h:775
#12 0x00007fa2cf373c0b in KMime::Message::organization (this=0x22b54c0, create=true) at /d/kde/src/t/kdepimlibs/kmime/kmime_message.cpp:147
#13 0x00007fa2d36fc6b8 in KMComposeWin::slotIdentityChanged (this=0x228c760, uoid=1097287358, initalChange=false) at /d/kde/src/t/kdepim/kmail/kmcomposewin.cpp:3558
#14 0x00007fa2d36d7109 in KMComposeWin::qt_metacall (this=0x228c760, _c=QMetaObject::InvokeMetaMethod, _id=54, _a=0x7fff1fd27ff0) at /d/kde/build/t/kdepim/kmail/kmcomposewin.moc:258
#15 0x00007fa2ced0a557 in QMetaObject::metacall (object=0x228c760, cl=QMetaObject::InvokeMetaMethod, idx=104, argv=0x7fff1fd27ff0) at kernel/qmetaobject.cpp:237
#16 0x00007fa2ced209d5 in QMetaObject::activate (sender=0x228b460, m=0x7fa2d2f169a0, local_signal_index=0, argv=0x7fff1fd27ff0) at kernel/qobject.cpp:3293
#17 0x00007fa2d2d0ca46 in KPIMIdentities::IdentityCombo::identityChanged (this=0x228b460, _t1=1097287358) at /d/kde/build/t/kdepimlibs/kpimidentities/identitycombo.moc:95
#18 0x00007fa2d2d0c822 in KPIMIdentities::IdentityCombo::slotEmitChanged (this=0x228b460, idx=1) at /d/kde/src/t/kdepimlibs/kpimidentities/identitycombo.cpp:150
#19 0x00007fa2d2d0c9d1 in KPIMIdentities::IdentityCombo::qt_metacall (this=0x228b460, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff1fd28190)
    at /d/kde/build/t/kdepimlibs/kpimidentities/identitycombo.moc:82
#20 0x00007fa2ced0a557 in QMetaObject::metacall (object=0x228b460, cl=QMetaObject::InvokeMetaMethod, idx=53, argv=0x7fff1fd28190) at kernel/qmetaobject.cpp:237
#21 0x00007fa2ced209d5 in QMetaObject::activate (sender=0x228b460, m=0x7fa2d09a55e0, local_signal_index=1, argv=0x7fff1fd28190) at kernel/qobject.cpp:3293
#22 0x00007fa2d01f7b9e in QComboBox::activated (this=0x228b460, _t1=1) at .moc/debug-shared/moc_qcombobox.cpp:274
#23 0x00007fa2d01f1342 in QComboBoxPrivate::emitActivated (this=0x228cd40, index=...) at widgets/qcombobox.cpp:1218
#24 0x00007fa2d01f12d9 in QComboBoxPrivate::_q_itemSelected (this=0x228cd40, item=...) at widgets/qcombobox.cpp:1209
#25 0x00007fa2d01f75b6 in QComboBox::qt_metacall (this=0x228b460, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0x7fff1fd283e0) at .moc/debug-shared/moc_qcombobox.cpp:191
#26 0x00007fa2d2d0c951 in KPIMIdentities::IdentityCombo::qt_metacall (this=0x228b460, _c=QMetaObject::InvokeMetaMethod, _id=39, _a=0x7fff1fd283e0)
    at /d/kde/build/t/kdepimlibs/kpimidentities/identitycombo.moc:75
#27 0x00007fa2ced0a557 in QMetaObject::metacall (object=0x228b460, cl=QMetaObject::InvokeMetaMethod, idx=39, argv=0x7fff1fd283e0) at kernel/qmetaobject.cpp:237
#28 0x00007fa2ced209d5 in QMetaObject::activate (sender=0x1930c60, m=0x7fa2d09c1de0, local_signal_index=0, argv=0x7fff1fd283e0) at kernel/qobject.cpp:3293
#29 0x00007fa2d05202b5 in QComboBoxPrivateContainer::itemSelected (this=0x1930c60, _t1=...) at .moc/debug-shared/moc_qcombobox_p.cpp:213
#30 0x00007fa2d01ef3a8 in QComboBoxPrivateContainer::eventFilter (this=0x1930c60, o=0x23a15f0, e=0x7fff1fd28e60) at widgets/qcombobox.cpp:663
#31 0x00007fa2ced02713 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x15c80f0, receiver=0x23a15f0, event=0x7fff1fd28e60) at kernel/qcoreapplication.cpp:819
#32 0x00007fa2cfd80781 in QApplicationPrivate::notify_helper (this=0x15c80f0, receiver=0x23a15f0, e=0x7fff1fd28e60) at kernel/qapplication.cpp:4300
#33 0x00007fa2cfd7e7d7 in QApplication::notify (this=0x7fff1fd29e00, receiver=0x23a15f0, e=0x7fff1fd28e60) at kernel/qapplication.cpp:3869
#34 0x00007fa2d45f25cb in KApplication::notify (this=0x7fff1fd29e00, receiver=0x23a15f0, event=0x7fff1fd28e60) at /d/kde/src/t/kdelibs/kdeui/kernel/kapplication.cpp:302
#35 0x00007fa2ced023f8 in QCoreApplication::notifyInternal (this=0x7fff1fd29e00, receiver=0x23a15f0, event=0x7fff1fd28e60) at kernel/qcoreapplication.cpp:704
#36 0x00007fa2cfd8336b in QCoreApplication::sendSpontaneousEvent (receiver=0x23a15f0, event=0x7fff1fd28e60) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#37 0x00007fa2cfd7ce5d in QApplicationPrivate::sendMouseEvent (receiver=0x23a15f0, event=0x7fff1fd28e60, alienWidget=0x23a15f0, nativeWidget=0x1930c60, buttonDown=0x7fa2d09e1c98, 
    lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2967
#38 0x00007fa2cfe1c4da in QETWidget::translateMouseEvent (this=0x1930c60, event=0x7fff1fd298c0) at kernel/qapplication_x11.cpp:4302
#39 0x00007fa2cfe190ce in QApplication::x11ProcessEvent (this=0x7fff1fd29e00, event=0x7fff1fd298c0) at kernel/qapplication_x11.cpp:3379
#40 0x00007fa2cfe50efd in x11EventSourceDispatch (s=0x15cbab0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#41 0x00007fa2c67aa8c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#42 0x00007fa2c67ae748 in ?? () from /lib/libglib-2.0.so.0
#43 0x00007fa2c67ae8fc in g_main_context_iteration () from /lib/libglib-2.0.so.0
#44 0x00007fa2ced3f3d3 in QEventDispatcherGlib::processEvents (this=0x158dca0, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#45 0x00007fa2cfe514c0 in QGuiEventDispatcherGlib::processEvents (this=0x158dca0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#46 0x00007fa2cecff3f0 in QEventLoop::processEvents (this=0x7fff1fd29c90, flags=...) at kernel/qeventloop.cpp:149
#47 0x00007fa2cecff546 in QEventLoop::exec (this=0x7fff1fd29c90, flags=...) at kernel/qeventloop.cpp:201
#48 0x00007fa2ced02afa in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#49 0x00007fa2cfd7d9ec in QApplication::exec () at kernel/qapplication.cpp:3583
#50 0x0000000000403923 in main (argc=3, argv=0x7fff1fd29f98) at /d/kde/src/t/kdepim/kmail/main.cpp:147

Reported using DrKonqi
Comment 1 Leo Franchi 2010-05-13 17:23:27 UTC
Hm, I can't reproduce this here. I can switch between identities in the combobox in the composer window, and nothing unexpected happens.
Comment 2 Thomas McGuire 2010-05-15 01:45:21 UTC
I can reproduce, the trick is to have one identity with Organization field filled out and one without.
Comment 3 Thomas McGuire 2010-05-15 10:43:04 UTC
SVN commit 1127000 by tmcguire:

Don't crash when switching identities.

Don't create a Generic header for the organization, as then, it will
assert when you try to retrieve the header as a proper Organization
header.

BUG: 237314

 M  +3 -2      kmail/kmcomposewin.cpp  
 M  +3 -2      messagecomposer/messagehelper.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1127000
Comment 4 Sabine Faure 2010-05-17 19:37:39 UTC
It is corrected now.

Switching identities works now it even switch the email address (from: field) accordingly.

Trunk, Svn Rev 1127799