Bug 310491 - Kleopatra crashes when dealing with s/mime certificates
Summary: Kleopatra crashes when dealing with s/mime certificates
Status: RESOLVED WORKSFORME
Alias: None
Product: kleopatra
Classification: Applications
Component: general (show other bugs)
Version: 2.1.1
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: Fabio Coatti
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-11-22 11:06 UTC by Fabio Coatti
Modified: 2013-12-28 14:57 UTC (History)
2 users (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 Fabio Coatti 2012-11-22 11:06:28 UTC
I'm seeing several crashes with kleopatra when performing several operations with s/mime certificates.
As example, marking a root certificate trusted, kleopatra crashes, but this happens not only here.
BAsically, I'm unable to deal with s/mime mail signatures because of problems in marking certificates accepted by kleopatra/gpgsm, and trying to make them accepted often I got crashes so I can't be sure if this is my error or some bug.
I've got stack traces, but I guess I need some hints on how to recompile kleopatra in order to get more useful data.


Reproducible: Always




Application: Kleopatra (kleopatra), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f1752bd7780 (LWP 28724))]

Thread 3 (Thread 0x7f173dc10700 (LWP 28749)):
#0  0x00007f1751c08d1d in read () from /lib64/libpthread.so.0
#1  0x00007f1749900a7f in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f17498c7184 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f17498c75b6 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f17498c7744 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007f1750273026 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f1750242ef2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007f1750243147 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f1750140fa7 in QThread::exec() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f1750222b6f in ?? () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f1750143fec in ?? () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007f1751c01ea7 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f174e949eed in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f173d40f700 (LWP 28822)):
#0  0x00007f1751c0617e in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f17501444af in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00000000005d67bd in ?? ()
#3  0x00007f1750143fec in ?? () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f1751c01ea7 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f174e949eed in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f1752bd7780 (LWP 28724)):
[KCrash Handler]
#6  0x00007f174fb7afbc in ?? () from /usr/lib64/qt4/libQtGui.so.4
#7  0x00007f174fb7b358 in ?? () from /usr/lib64/qt4/libQtGui.so.4
#8  0x00007f1750258009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f17502a4044 in QAbstractItemModel::rowsRemoved(QModelIndex const&, int, int) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f175023ea01 in QAbstractItemModel::endRemoveRows() () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00000000004a1e0d in ?? ()
#12 0x00000000004a0f43 in ?? ()
#13 0x00000000004b35f5 in ?? ()
#14 0x00007f1750258009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#15 0x0000000000489ec0 in ?? ()
#16 0x000000000048bf94 in ?? ()
#17 0x000000000048f405 in ?? ()
#18 0x000000000049187a in ?? ()
#19 0x0000000000491a00 in ?? ()
#20 0x0000000000491b34 in ?? ()
#21 0x00007f1750258009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#22 0x00007f1752712054 in ?? () from /usr/lib64/libkleo.so.4
#23 0x00007f1752748e22 in ?? () from /usr/lib64/libkleo.so.4
#24 0x00007f175025d1d6 in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#25 0x00007f174f5ef7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#26 0x00007f174f5f44d1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#27 0x00007f17517be866 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#28 0x00007f175024439c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#29 0x00007f1750247bfa in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#30 0x00007f1750272ba3 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#31 0x00007f17498c7333 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#32 0x00007f17498c7680 in ?? () from /usr/lib64/libglib-2.0.so.0
#33 0x00007f17498c7744 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#34 0x00007f1750272fbf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#35 0x00007f174f6929de in ?? () from /usr/lib64/qt4/libQtGui.so.4
#36 0x00007f1750242ef2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#37 0x00007f1750243147 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#38 0x00007f1750247f15 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#39 0x000000000045064a in ?? ()
#40 0x00007f174e88391d in __libc_start_main () from /lib64/libc.so.6
#41 0x0000000000451601 in _start ()
Comment 1 Jekyll Wu 2012-11-22 11:31:55 UTC
See http://www.gentoo.org/proj/en/qa/backtraces.xml for the proper way to get useful backtrace in Gentoo.
Comment 2 Fabio Coatti 2012-11-22 16:50:34 UTC
Thanks; this one should be better. It doesn't happens all times, but after some "reload" certificates and "trust certificate" it happenend again; let me know if I have to obtain also core dumps, or recompile also qt for more data.




Application: Kleopatra (kleopatra), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f432d837780 (LWP 10858))]

Thread 3 (Thread 0x7f4318870700 (LWP 10867)):
#0  0x00007f432aed2567 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#1  0x00007f432aed2635 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007f4324526e26 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f432452753b in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f4324527744 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007f432aed3026 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f432aea2ef2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007f432aea3147 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f432ada0fa7 in QThread::exec() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f432ae82b6f in ?? () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f432ada3fec in ?? () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007f432c861ea7 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f43295a9eed in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f4313fff700 (LWP 10913)):
#0  0x00007f432c86617e in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f432ada44af in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00000000005d678d in (anonymous namespace)::ReaderStatusThread::run (this=0x1bb0a90) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/smartcard/readerstatus.cpp:543
#3  0x00007f432ada3fec in ?? () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f432c861ea7 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f43295a9eed in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f432d837780 (LWP 10858)):
[KCrash Handler]
#6  0x00007f432a7dafbc in ?? () from /usr/lib64/qt4/libQtGui.so.4
#7  0x00007f432a7db358 in ?? () from /usr/lib64/qt4/libQtGui.so.4
#8  0x00007f432aeb8009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f432af04044 in QAbstractItemModel::rowsRemoved(QModelIndex const&, int, int) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f432ae9ea01 in QAbstractItemModel::endRemoveRows() () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00000000004a1e0d in (anonymous namespace)::HierarchicalKeyListModel::doRemoveKey (this=0x1cd2700, key=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keylistmodel.cpp:870
#12 0x00000000004a0f43 in Kleo::AbstractKeyListModel::removeKey (this=0x1cd2700, key=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keylistmodel.cpp:222
#13 0x00000000004b35f5 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=<optimized out>, _c=<optimized out>) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3_build/kleopatra/moc_keylistcontroller.cpp:106
#14 Kleo::KeyListController::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3_build/kleopatra/moc_keylistcontroller.cpp:83
#15 0x00007f432aeb8009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#16 0x0000000000489ec0 in Kleo::KeyCache::aboutToRemove (this=<optimized out>, _t1=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3_build/kleopatra/moc_keycache.cpp:127
#17 0x000000000048bf94 in Kleo::KeyCache::remove (this=0x1bda980, key=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keycache.cpp:623
#18 0x000000000048f405 in Kleo::KeyCache::insert (this=0x1bda980, keys=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keycache.cpp:737
#19 0x000000000049187a in Kleo::KeyCache::RefreshKeysJob::Private::updateKeyCache (this=0x1cd9220) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keycache.cpp:941
#20 0x0000000000491a00 in Kleo::KeyCache::RefreshKeysJob::Private::jobDone (this=0x1cd9220, result=...) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keycache.cpp:891
#21 0x0000000000491b34 in listAllKeysJobDone (nextKeys=std::vector of length 84, capacity 84 = {...}, res=..., this=0x1cd9220) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/models/keycache.cpp:862
#22 Kleo::KeyCache::RefreshKeysJob::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3_build/kleopatra/moc_keycache_p.cpp:59
#23 0x00007f432aeb8009 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#24 0x00007f432d372054 in ?? () from /usr/lib64/libkleo.so.4
#25 0x00007f432d3a8e22 in ?? () from /usr/lib64/libkleo.so.4
#26 0x00007f432aebd1d6 in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#27 0x00007f432a24f7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#28 0x00007f432a2544d1 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#29 0x00007f432c41e866 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#30 0x00007f432aea439c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#31 0x00007f432aea7bfa in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#32 0x00007f432aed2ba3 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#33 0x00007f4324527333 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#34 0x00007f4324527680 in ?? () from /usr/lib64/libglib-2.0.so.0
#35 0x00007f4324527744 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#36 0x00007f432aed2fbf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#37 0x00007f432a2f29de in ?? () from /usr/lib64/qt4/libQtGui.so.4
#38 0x00007f432aea2ef2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#39 0x00007f432aea3147 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#40 0x00007f432aea7f15 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#41 0x000000000045064a in main (argc=1, argv=<optimized out>) at /var/tmp/portage/kde-base/kleopatra-4.9.3/work/kleopatra-4.9.3/kleopatra/main.cpp:316
Comment 3 Emanuel Schütze 2013-05-08 15:19:05 UTC
Can you test Kleopatra from 4.10.3 which is also integrated into Gpg4win package? I can't reproduce your problem.
Comment 4 Fabio Coatti 2013-10-17 14:00:15 UTC
Now (4.11.2) I'm unable to reproduce the same issue. So I guess it can be considered closed... or at least I hope so :)
Comment 5 Christoph Feck 2013-12-28 14:57:45 UTC
Thanks for the update. If you see the issue again, please reopen.