Bug 265338

Summary: kgpg crashes when assistant is started twice
Product: [Applications] kgpg Reporter: Dennis Schridde <dschridde+kde>
Component: generalAssignee: Rolf Eike Beer <kde>
Status: RESOLVED FIXED    
Severity: crash Keywords: investigated, triaged
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description Dennis Schridde 2011-02-03 21:37:37 UTC
Application: kgpg (2.4.92)
KDE Platform Version: 4.6.00 (4.6.0)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-26-generic i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
I was in the config widget when I was asked to start the assistant to figure out the gpg config. I selected to start the assistant, but did not notice the window opening in the background. Hence I clicked again, starting another instance. Then I finished the first assistant, saw the 2nd, finished it too, kgpg crashed.

-- Backtrace:
Application: KGpg (kgpg), signal: Segmentation fault
[Current thread is 1 (Thread 0xb7758710 (LWP 2362))]

Thread 3 (Thread 0xb3cfcb70 (LWP 3026)):
#0  0x00bf7fa1 in pthread_mutex_unlock (mutex=0xa12be3c) at forward.c:184
#1  0x03b13e58 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#2  0x03b14279 in ?? () from /lib/libglib-2.0.so.0
#3  0x03b14848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x01b9559f in QEventDispatcherGlib::processEvents (this=0xa113128, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x01b65609 in QEventLoop::processEvents (this=0xb3cfc290, flags=) at kernel/qeventloop.cpp:149
#6  0x01b65a8a in QEventLoop::exec (this=0xb3cfc290, flags=...) at kernel/qeventloop.cpp:201
#7  0x01a61b7e in QThread::exec (this=0xa0a41f0) at thread/qthread.cpp:490
#8  0x01b4435b in QInotifyFileSystemWatcherEngine::run (this=0xa0a41f0) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x01a64df9 in QThreadPrivate::start (arg=0xa0a41f0) at thread/qthread_unix.cpp:266
#10 0x00abccc9 in start_thread (arg=0xb3cfcb70) at pthread_create.c:304
#11 0x00bea69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xb3302b70 (LWP 3211)):
#0  __i686.get_pc_thunk.bx () at ../sysdeps/i386/i686/multiarch/strcmp.S:50
#1  0x00bf7f3b in pthread_mutex_lock (mutex=0xb2a004ec) at forward.c:182
#2  0x03b14521 in ?? () from /lib/libglib-2.0.so.0
#3  0x03b14848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x01b9559f in QEventDispatcherGlib::processEvents (this=0xb2a00468, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x01b65609 in QEventLoop::processEvents (this=0xb3302290, flags=) at kernel/qeventloop.cpp:149
#6  0x01b65a8a in QEventLoop::exec (this=0xb3302290, flags=...) at kernel/qeventloop.cpp:201
#7  0x01a61b7e in QThread::exec (this=0xa3b5758) at thread/qthread.cpp:490
#8  0x01b4435b in QInotifyFileSystemWatcherEngine::run (this=0xa3b5758) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x01a64df9 in QThreadPrivate::start (arg=0xa3b5758) at thread/qthread_unix.cpp:266
#10 0x00abccc9 in start_thread (arg=0xb3302b70) at pthread_create.c:304
#11 0x00bea69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb7758710 (LWP 2362)):
[KCrash Handler]
#7  QAbstractButton::isChecked (this=0xa0e4100) at widgets/qabstractbutton.cpp:770
#8  0x080619b6 in KGpgExternalActions::qt_metacall (this=0xbfe50d80, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfe50ebc) at moc_kgpgexternalactions.cpp:130
#9  0x01b6c8ca in QMetaObject::metacall (object=0xa0e4100, cl=3219459772, idx=21, argv=0xbfe50ebc) at kernel/qmetaobject.cpp:237
#10 0x01b7f6ad in QMetaObject::activate (sender=0x9e00238, m=0x19ee5a4, local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3280
#11 0x015cf217 in QDialog::accepted (this=0x9e00238) at .moc/release-shared/moc_qdialog.cpp:145
#12 0x015d0768 in QDialog::done (this=0x9e00238, r=1) at dialogs/qdialog.cpp:597
#13 0x015cf0cc in QDialog::accept (this=0x9e00238) at dialogs/qdialog.cpp:610
#14 0x015d0e66 in QDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0xbfe5112c) at .moc/release-shared/moc_qdialog.cpp:96
#15 0x00726dfa in KDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfe5112c) at ./kdialog.moc:151
#16 0x0082a24a in KPageDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfe5112c) at ./kpagedialog.moc:70
#17 0x0070f2ea in KAssistantDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfe5112c) at ./kassistantdialog.moc:70
#18 0x0806278f in KGpgFirstAssistant::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfe5112c) at moc_kgpgfirstassistant.cpp:69
#19 0x01b6c8ca in QMetaObject::metacall (object=0x9e00238, cl=3219459772, idx=33, argv=0xbfe5112c) at kernel/qmetaobject.cpp:237
#20 0x01b7f6ad in QMetaObject::activate (sender=0x9e00238, m=0x811d52c, local_signal_index=6, argv=0x0) at kernel/qobject.cpp:3280
#21 0x00722ab7 in KDialog::user1Clicked (this=0x9e00238) at ./kdialog.moc:240
#22 0x00724dda in KDialog::slotButtonClicked (this=0x9e00238, button=4096) at ../../kdeui/dialogs/kdialog.cpp:899
#23 0x00727179 in KDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfe51398) at ./kdialog.moc:190
#24 0x0082a24a in KPageDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=69, _a=0xbfe51398) at ./kpagedialog.moc:70
#25 0x0070f2ea in KAssistantDialog::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=69, _a=0xbfe51398) at ./kassistantdialog.moc:70
#26 0x0806278f in KGpgFirstAssistant::qt_metacall (this=0x9e00238, _c=QMetaObject::InvokeMetaMethod, _id=69, _a=0xbfe51398) at moc_kgpgfirstassistant.cpp:69
#27 0x01b6c8ca in QMetaObject::metacall (object=0x9e00238, cl=3219459772, idx=69, argv=0xbfe51398) at kernel/qmetaobject.cpp:237
#28 0x01b7f6ad in QMetaObject::activate (sender=0x9df3a94, m=0x1c980f8, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3280
#29 0x01b825a3 in QSignalMapper::mapped (this=0x9df3a94, _t1=4096) at .moc/release-shared/moc_qsignalmapper.cpp:101
#30 0x01b837ed in QSignalMapper::map (this=0x9df3a94, sender=0xa100208) at kernel/qsignalmapper.cpp:266
#31 0x01b839ce in QSignalMapper::map (this=0x9df3a94) at kernel/qsignalmapper.cpp:257
#32 0x01b83a9b in QSignalMapper::qt_metacall (this=0x9df3a94, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfe51538) at .moc/release-shared/moc_qsignalmapper.cpp:87
#33 0x01b6c8ca in QMetaObject::metacall (object=0x9df3a94, cl=3219459772, idx=8, argv=0xbfe51538) at kernel/qmetaobject.cpp:237
#34 0x01b7f6ad in QMetaObject::activate (sender=0xa100208, m=0x19f7704, local_signal_index=2, argv=0x0) at kernel/qobject.cpp:3280
#35 0x017d4019 in QAbstractButton::clicked (this=0xa100208, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#36 0x01493ff9 in QAbstractButtonPrivate::emitClicked (this=0xa2d7e88) at widgets/qabstractbutton.cpp:546
#37 0x014956f4 in QAbstractButtonPrivate::click (this=0xa2d7e88) at widgets/qabstractbutton.cpp:539
#38 0x014959ae in QAbstractButton::mouseReleaseEvent (this=0xa100208, e=0xbfe51c80) at widgets/qabstractbutton.cpp:1121
#39 0x010c3e08 in QWidget::event (this=0xa100208, event=0xbfe51c80) at kernel/qwidget.cpp:8187
#40 0x01493e9e in QAbstractButton::event (this=0xa100208, e=0xa0e4100) at widgets/qabstractbutton.cpp:1080
#41 0x01541c22 in QPushButton::event (this=0xa100208, e=0xbfe51c80) at widgets/qpushbutton.cpp:683
#42 0x01065fdc in QApplicationPrivate::notify_helper (this=0x9d69f68, receiver=0xa100208, e=0xbfe51c80) at kernel/qapplication.cpp:4396
#43 0x0106cc2e in QApplication::notify (this=0x9d659a0, receiver=0xa100208, e=0xbfe51c80) at kernel/qapplication.cpp:3959
#44 0x007f1f7a in KApplication::notify (this=0x9d659a0, receiver=0xa100208, event=0xbfe51c80) at ../../kdeui/kernel/kapplication.cpp:311
#45 0x01b66b3b in QCoreApplication::notifyInternal (this=0x9d659a0, receiver=0xa100208, event=0xbfe51c80) at kernel/qcoreapplication.cpp:732
#46 0x0106b094 in sendEvent (receiver=0xa100208, event=0xbfe51c80, alienWidget=0xa100208, nativeWidget=0x9e00238, buttonDown=0x1a003c0, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#47 QApplicationPrivate::sendMouseEvent (receiver=0xa100208, event=0xbfe51c80, alienWidget=0xa100208, nativeWidget=0x9e00238, buttonDown=0x1a003c0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3058
#48 0x010f9d10 in QETWidget::translateMouseEvent (this=0x9e00238, event=0xbfe5219c) at kernel/qapplication_x11.cpp:4403
#49 0x010f9151 in QApplication::x11ProcessEvent (this=0x9d659a0, event=0xbfe5219c) at kernel/qapplication_x11.cpp:3414
#50 0x0112836a in x11EventSourceDispatch (s=0x9d6fbb0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#51 0x03b10855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#52 0x03b14668 in ?? () from /lib/libglib-2.0.so.0
#53 0x03b14848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#54 0x01b95565 in QEventDispatcherGlib::processEvents (this=0x9d48b70, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#55 0x01127be5 in QGuiEventDispatcherGlib::processEvents (this=0x9d48b70, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#56 0x01b65609 in QEventLoop::processEvents (this=0xbfe52494, flags=) at kernel/qeventloop.cpp:149
#57 0x01b65a8a in QEventLoop::exec (this=0xbfe52494, flags=...) at kernel/qeventloop.cpp:201
#58 0x01b6a00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#59 0x01064e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#60 0x080c4836 in main (argc=3, argv=0xbfe526c4) at ../../kgpg/main.cpp:57

Reported using DrKonqi
Comment 1 Rolf Eike Beer 2011-02-22 19:52:32 UTC
SVN commit 1222310 by dakon:

make sure the first time assistant is shown only once

Also make sure it get's properly deleted.

CCBUG:265338

 M  +3 -6      kgpgexternalactions.cpp  
 M  +2 -2      kgpgexternalactions.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1222310
Comment 2 Rolf Eike Beer 2011-02-22 19:53:05 UTC
Is there a chance that you could test the current trunk to see if that now works for you?
Comment 3 Dennis Schridde 2011-02-23 03:24:40 UTC
(In reply to comment #2)
> Is there a chance that you could test the current trunk to see if that now
> works for you?
Doubtful. I am in no hurry and will just check the next release.
Comment 4 Rolf Eike Beer 2011-10-23 17:31:19 UTC
Can you please retest with the current version?
Comment 5 Andrew Crouthamel 2018-09-19 14:24:15 UTC
This bug has had its resolution changed, but accidentally has been left in NEEDSINFO status. I am thus closing this bug and setting the status as RESOLVED to reflect the resolution change.