Application: kgpg (2.4.1) KDE Platform Version: 4.5.2 (KDE 4.5.2) Qt Version: 4.7.0 Operating System: Linux 2.6.34.7-0.3-desktop x86_64 Distribution: "openSUSE 11.3 (x86_64)" -- Information about the crash: Hello, Everytime I run kgpg, it crashes. There is no more information except the backtrace. I can provide more info if needed. The crash can be reproduced every time. -- Backtrace: Application: KGpg (kgpg), signal: Segmentation fault [KCrash Handler] #6 QModelIndex (this=0x918fe0, child=<value optimized out>) at ../../src/corelib/kernel/qabstractitemmodel.h:65 #7 QSortFilterProxyModel::parent (this=0x918fe0, child=<value optimized out>) at itemviews/qsortfilterproxymodel.cpp:1656 #8 0x00007f4bdf2f6c01 in parent (this=0x90df40, index=...) at ../../src/corelib/kernel/qabstractitemmodel.h:389 #9 QTreeView::indexRowSizeHint (this=0x90df40, index=...) at itemviews/qtreeview.cpp:2758 #10 0x00007f4bdf2f7334 in QTreeViewPrivate::itemHeight (this=0xd4ee20, item=<value optimized out>) at itemviews/qtreeview.cpp:3229 #11 0x00007f4bdf2f75cf in QTreeViewPrivate::updateScrollBars (this=0xd4ee20) at itemviews/qtreeview.cpp:3452 #12 0x00007f4bdf2f799d in QTreeView::updateGeometries (this=0x90df40) at itemviews/qtreeview.cpp:2686 #13 0x00007f4bdf2ff499 in QTreeView::timerEvent (this=0x90df40, event=0x7fff5837e070) at itemviews/qtreeview.cpp:1183 #14 0x00007f4bde1b0509 in QObject::event (this=0x90df40, e=<value optimized out>) at kernel/qobject.cpp:1175 #15 0x00007f4bdedfb01d in QWidget::event (this=0x90df40, event=0x7fff5837e070) at kernel/qwidget.cpp:8646 #16 0x00007f4bdf1a3546 in QFrame::event (this=0x90df40, e=0x7fff5837e070) at widgets/qframe.cpp:557 #17 0x00007f4bdf22452b in QAbstractScrollArea::event (this=0x90df40, e=0x7fff5837e070) at widgets/qabstractscrollarea.cpp:996 #18 0x00007f4bdf2bee8b in QAbstractItemView::event (this=0x90df40, event=0x7fff5837e070) at itemviews/qabstractitemview.cpp:1555 #19 0x00007f4bdeda9f34 in QApplicationPrivate::notify_helper (this=0x712ee0, receiver=0x90df40, e=0x7fff5837e070) at kernel/qapplication.cpp:4396 #20 0x00007f4bdedb235a in QApplication::notify (this=<value optimized out>, receiver=0x90df40, e=0x7fff5837e070) at kernel/qapplication.cpp:4277 #21 0x00007f4bdfa01826 in KApplication::notify (this=0x70c430, receiver=0x90df40, event=0x7fff5837e070) at /usr/src/debug/kdelibs-4.5.2/kdeui/kernel/kapplication.cpp:310 #22 0x00007f4bde19c9dc in QCoreApplication::notifyInternal (this=0x70c430, receiver=0x90df40, event=0x7fff5837e070) at kernel/qcoreapplication.cpp:732 #23 0x00007f4bde1ca189 in sendEvent (this=0x719120) at kernel/qcoreapplication.h:215 #24 QTimerInfoList::activateTimers (this=0x719120) at kernel/qeventdispatcher_unix.cpp:617 #25 0x00007f4bde1c6f34 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #26 0x00007f4bda748a93 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #27 0x00007f4bda749270 in ?? () from /usr/lib64/libglib-2.0.so.0 #28 0x00007f4bda749510 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #29 0x00007f4bde1c75ff in QEventDispatcherGlib::processEvents (this=0x6e9b00, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415 #30 0x00007f4bdee4deee in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #31 0x00007f4bde19be12 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149 #32 0x00007f4bde19c025 in QEventLoop::exec (this=0x7fff5837e380, flags=...) at kernel/qeventloop.cpp:201 #33 0x00007f4bde1a043b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #34 0x00000000004792b4 in _start () Possible duplicates by query: bug 238819, bug 234420, bug 233052. Reported using DrKonqi
Could you please try to build KGpg from the 4.5 branch with full debug info and try again? This backtrace sadly does not contain any KGpg code so I can't see why this happens.
I installed kgpg-debuginfo. Is this enough? Application: KGpg (kgpg), signal: Segmentation fault [KCrash Handler] #6 QModelIndex (this=0x91ce70, child=<value optimized out>) at ../../src/corelib/kernel/qabstractitemmodel.h:65 #7 QSortFilterProxyModel::parent (this=0x91ce70, child=<value optimized out>) at itemviews/qsortfilterproxymodel.cpp:1656 #8 0x00007f6b98d29c01 in parent (this=0x9a7080, index=...) at ../../src/corelib/kernel/qabstractitemmodel.h:389 #9 QTreeView::indexRowSizeHint (this=0x9a7080, index=...) at itemviews/qtreeview.cpp:2758 #10 0x00007f6b98d2a334 in QTreeViewPrivate::itemHeight (this=0xd663e0, item=<value optimized out>) at itemviews/qtreeview.cpp:3229 #11 0x00007f6b98d2a5cf in QTreeViewPrivate::updateScrollBars (this=0xd663e0) at itemviews/qtreeview.cpp:3452 #12 0x00007f6b98d2a99d in QTreeView::updateGeometries (this=0x9a7080) at itemviews/qtreeview.cpp:2686 #13 0x00007f6b98d32499 in QTreeView::timerEvent (this=0x9a7080, event=0x7fff3122f8c0) at itemviews/qtreeview.cpp:1183 #14 0x00007f6b97be3509 in QObject::event (this=0x9a7080, e=<value optimized out>) at kernel/qobject.cpp:1175 #15 0x00007f6b9882e01d in QWidget::event (this=0x9a7080, event=0x7fff3122f8c0) at kernel/qwidget.cpp:8646 #16 0x00007f6b98bd6546 in QFrame::event (this=0x9a7080, e=0x7fff3122f8c0) at widgets/qframe.cpp:557 #17 0x00007f6b98c5752b in QAbstractScrollArea::event (this=0x9a7080, e=0x7fff3122f8c0) at widgets/qabstractscrollarea.cpp:996 #18 0x00007f6b98cf1e8b in QAbstractItemView::event (this=0x9a7080, event=0x7fff3122f8c0) at itemviews/qabstractitemview.cpp:1555 #19 0x00007f6b987dcf34 in QApplicationPrivate::notify_helper (this=0x7139f0, receiver=0x9a7080, e=0x7fff3122f8c0) at kernel/qapplication.cpp:4396 #20 0x00007f6b987e535a in QApplication::notify (this=<value optimized out>, receiver=0x9a7080, e=0x7fff3122f8c0) at kernel/qapplication.cpp:4277 #21 0x00007f6b99434846 in KApplication::notify (this=0x70c430, receiver=0x9a7080, event=0x7fff3122f8c0) at /usr/src/debug/kdelibs-4.5.2/kdeui/kernel/kapplication.cpp:310 #22 0x00007f6b97bcf9dc in QCoreApplication::notifyInternal (this=0x70c430, receiver=0x9a7080, event=0x7fff3122f8c0) at kernel/qcoreapplication.cpp:732 #23 0x00007f6b97bfd189 in sendEvent (this=0x711990) at kernel/qcoreapplication.h:215 #24 QTimerInfoList::activateTimers (this=0x711990) at kernel/qeventdispatcher_unix.cpp:617 #25 0x00007f6b97bf9f34 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #26 0x00007f6b9417ba93 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #27 0x00007f6b9417c270 in ?? () from /usr/lib64/libglib-2.0.so.0 #28 0x00007f6b9417c510 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #29 0x00007f6b97bfa5ff in QEventDispatcherGlib::processEvents (this=0x6e9b00, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415 #30 0x00007f6b98880eee in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #31 0x00007f6b97bcee12 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149 #32 0x00007f6b97bcf025 in QEventLoop::exec (this=0x7fff3122fbd0, flags=...) at kernel/qeventloop.cpp:201 #33 0x00007f6b97bd343b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #34 0x00000000004792b4 in main (argc=1, argv=0x7fff31230098) at /usr/src/debug/kdeutils-4.5.2/kgpg/main.cpp:57
*** Bug 257045 has been marked as a duplicate of this bug. ***
*** Bug 259988 has been marked as a duplicate of this bug. ***
[Comment from a bug triager] As described in bug 219964 comment 13, this may be a Qt issue which should be fixed soon. Regards
*** Bug 265705 has been marked as a duplicate of this bug. ***
*** Bug 270835 has been marked as a duplicate of this bug. ***
(In reply to comment #7) > *** Bug 270835 has been marked as a duplicate of this bug. *** Reading through other duplicates, it gave me the notion to look for possibly backward-incompatible config elements in ~/.kde/share/config/kgpgrc. In the end the result was deleting the entire config and running afresh.
Yes, removing ~/.kde4/share/config/kgpgrc fixed the problem (confirmed on FreeBSD). Thanks.
*** Bug 270995 has been marked as a duplicate of this bug. ***
*** Bug 273393 has been marked as a duplicate of this bug. ***
*** Bug 274572 has been marked as a duplicate of this bug. ***
Is there any date available when this bug is fixed for the users? I can't use kgpg at all. Grave bug imho. Greetings, Alexander
I have no influence on this, sorry. And I don't like that either. Please bug your distro to backport the fix.
The Qt bug causing this crash was fixed for the next Qt release (4.7.4): http://bugreports.qt.nokia.com/browse/QTBUG-16292 Some distributions already have the patch (like Opensuse, according to this comment https://bugs.kde.org/show_bug.cgi?id=219964#c33) If someone known that their distribution has pushed the patch, or they use Qt 4.7.4, and still experience the KGPG crash, then it may be a different crash which should be reported. Regards
*** Bug 278770 has been marked as a duplicate of this bug. ***
Created attachment 65675 [details] New crash information added by DrKonqi kgpg (2.6.2) on KDE Platform 4.7.3 (4.7.3) using Qt 4.8.0 Updated to Fedora 16, which ships with Qt 4.8.0, but the issue still persists. Removing ~/.kde/share/config/kgpgrc fixes the problem for a *single* session (when it starts with wizard). qt-4.8.0-0.23.rc1.fc16.i686 kdeutils-kgpg-4.7.3-1.fc16.i686 -- Backtrace (Reduced): #7 QModelIndex (other=..., this=0xbf92ad60) at ../../src/corelib/kernel/qabstractitemmodel.h:65 #8 QSortFilterProxyModel::parent (this=0x9f563c0, child=...) at itemviews/qsortfilterproxymodel.cpp:1659 #9 0x45da46d6 in parent (this=<optimized out>) at ../../src/corelib/kernel/qabstractitemmodel.h:393 #10 QTreeView::indexRowSizeHint (this=0x9f567b0, index=...) at itemviews/qtreeview.cpp:2751 #11 0x45da84f3 in QTreeViewPrivate::itemHeight (this=0x9f56b00, item=0) at itemviews/qtreeview.cpp:3240
Can you try to get a backtrace with both KGpg and Qt debug symbols installed please?
Just like Denis, I have the same synthom in OpenSuse12.1 RC2. One run without config. Crash otherwise. BTW, if stack is different, it might be another bug. I will not be able to get the BT with symbols from Opensuse in the following weeks as I'm in a vacation with lack of computer access.
Seems to be the same stack error. I guess the fact that is runs OK when there is no configuration might be important. Application: KGpg (kgpg), signal: Segmentation fault [KCrash Handler] #6 QModelIndex (other=..., this=0x7fff556d2f40) at ../../src/corelib/kernel/qabstractitemmodel.h:65 #7 QSortFilterProxyModel::parent (this=0x9589a0, child=<optimized out>) at itemviews/qsortfilterproxymodel.cpp:1657 #8 0x00007f04d2b23b1b in parent (this=0x84fda0) at ../../src/corelib/kernel/qabstractitemmodel.h:389 #9 QTreeView::indexRowSizeHint (this=0x87e350, index=...) at itemviews/qtreeview.cpp:2759 #10 0x00007f04d2b27629 in itemHeight (item=0, this=0x9ddea0) at itemviews/qtreeview.cpp:3232 #11 QTreeViewPrivate::itemHeight (this=0x9ddea0, item=<optimized out>) at itemviews/qtreeview.cpp:3221 #12 0x00007f04d2b278c3 in QTreeViewPrivate::updateScrollBars (this=0x9ddea0) at itemviews/qtreeview.cpp:3453 #13 0x00007f04d2b27c7f in QTreeView::updateGeometries (this=0x87e350) at itemviews/qtreeview.cpp:2686 #14 0x00007f04d2b32309 in QTreeView::timerEvent (this=0x87e350, event=0x7fff556d3e60) at itemviews/qtreeview.cpp:1183 #15 0x00007f04d19a1e79 in QObject::event (this=0x87e350, e=<optimized out>) at kernel/qobject.cpp:1190 #16 0x00007f04d2631cfb in QWidget::event (this=0x87e350, event=0x7fff556d3e60) at kernel/qwidget.cpp:8754 #17 0x00007f04d29d6716 in QFrame::event (this=0x87e350, e=0x7fff556d3e60) at widgets/qframe.cpp:557 #18 0x00007f04d2a57f43 in QAbstractScrollArea::event (this=0x87e350, e=0x7fff556d3e60) at widgets/qabstractscrollarea.cpp:996 #19 0x00007f04d2af049b in QAbstractItemView::event (this=0x87e350, event=0x7fff556d3e60) at itemviews/qabstractitemview.cpp:1564 #20 0x00007f04d25e1be4 in notify_helper (e=0x7fff556d3e60, receiver=0x87e350, this=0x70c160) at kernel/qapplication.cpp:4481 #21 QApplicationPrivate::notify_helper (this=0x70c160, receiver=0x87e350, e=0x7fff556d3e60) at kernel/qapplication.cpp:4453 #22 0x00007f04d25e6a71 in QApplication::notify (this=0x707500, receiver=0x87e350, e=0x7fff556d3e60) at kernel/qapplication.cpp:4360 #23 0x00007f04d32f4e36 in KApplication::notify (this=0x707500, receiver=0x87e350, event=0x7fff556d3e60) at /usr/src/debug/kdelibs-4.7.2/kdeui/kernel/kapplication.cpp:311 #24 0x00007f04d198b81c in QCoreApplication::notifyInternal (this=0x707500, receiver=0x87e350, event=0x7fff556d3e60) at kernel/qcoreapplication.cpp:787 #25 0x00007f04d19b8398 in sendEvent (event=0x7fff556d3e60, receiver=<optimized out>) at kernel/qcoreapplication.h:215 #26 QTimerInfoList::activateTimers (this=0x718550) at kernel/qeventdispatcher_unix.cpp:618 #27 0x00007f04d19b5b84 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #28 0x00007f04cd9b958d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #29 0x00007f04cd9b9d88 in ?? () from /usr/lib64/libglib-2.0.so.0 #30 0x00007f04cd9b9f59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #31 0x00007f04d19b650f in QEventDispatcherGlib::processEvents (this=0x6e1490, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422 #32 0x00007f04d2684f2e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #33 0x00007f04d198aa22 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149 #34 0x00007f04d198ac1f in QEventLoop::exec (this=0x7fff556d4160, flags=...) at kernel/qeventloop.cpp:201 #35 0x00007f04d198ede7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064 #36 0x00000000004231a9 in ?? () #37 0x00007f04d11b223d in __libc_start_main () from /lib64/libc.so.6 #38 0x0000000000423235 in _start ()
So if you start KGpg without any config file around it doesn't crash. If you immediately terminate the program without changing anything and then start the program again, does it still crash? Could you try deleting the first half or so of the entries in the config file and see if it still crashes? Maybe even repeating this until you find an entry that makes a difference?
The only option that permit kgpg to start without a crash is: [GPG Settings] gpg_config_path[$e]=$HOME/.gnupg/gpg.conf However, removing this config triggers the "first run assistant", which is the same of removing the config file.
This isn't the first report that the crash still happens in 4.7.4 indeed, https://bugreports.qt.nokia.com/browse/QTBUG-16292 says so too. However to fix it better, I need * either reproduceable instructions (Dakon says he can't reproduce the kgpg crash), or * a valgrind log. Those with the crash, can you run kgpg in valgrind and attach the log here? [and then send me an email to make sure I see it...]
I’ve tried many, many times but I can’t get it to crash under Valgrind. It runs fine, just slow. However without Valgrind it crashes every time.
try this to get this less slow (hopefully) valgrind --trace-children=no kgpg --nofork
Still runs fine under Valgrind.
*** Bug 293695 has been marked as a duplicate of this bug. ***
Can we please remove the "RESOLVED" status, because clearly its not (at least with 4.7.4). Or is it a different bug like Comment #16 suggests? Greetings, Alexander
It is resolved as upstream, meaning it is a bug in a library we just use (Qt in this case) and we can do nothing about but hoping they will fix.
(In reply to comment #30) > It is resolved as upstream, meaning it is a bug in a library we just use (Qt in > this case) and we can do nothing about but hoping they will fix. According to your comment #16, the upstream bug was fixed, yet kgpg still keeps crashing (at least here): Qt: 4.7.4 KDE: 4.7.4 (4.7.4) So Alexaner's question remains: re-open or file a new report?
Created attachment 68674 [details] valgrind log
(In reply to comment #30) > It is resolved as upstream, meaning it is a bug in a library we just use (Qt in > this case) and we can do nothing about but hoping they will fix. I understand this. But it's *not* fixed upstream. So the tag resolved is just wrong. I attached a valgrind log with kgpg crashing. Since kgpg is now nearly 1.5 years unusable for me: Anyone can recommend a good alternative? Greetings, Alexander
As comment #24 says it's already known upstream that the bug is not completely fixed. Maybe the valgrind log can help to fix, thanks for providing it. David, what if in this case not only the index itself gets destroyed because of a change, but also it's parent?
Looks like a different crash to me. The old crash was purely inside itemHeight() (visible in both backtraces of the valgrind trace), while this one is about QSortFilterProxyModel and _q_sourceLayoutChanged. Please open a new bug report so that we don't mix up the two, and re-attach the valgrind log. The next step will be to have precise instructions on how to reproduce it, but I guess that's not easy with such data as kgpg data...
And please install the KGpg debug symbols before capturing the new dump.
New bug report with my crash: https://bugs.kde.org/show_bug.cgi?id=294097
Do you have any key groups? I suddenly had this crash when I have 2 or more key groups configured. When it's down to 1 everything is fine.
(In reply to comment #38) > Do you have any key groups? I suddenly had this crash when I have 2 or more key > groups configured. When it's down to 1 everything is fine. Yes i have 3 key groups. I can delete them and test if its working without them.
Git commit 751c40508de14dfc4f756ec6e5388d849d63004f by Rolf Eike Beer. Committed on 15/02/2012 at 20:53. Pushed by dakon into branch 'KDE/4.8'. fix crashes on model changes QAbstractItemModel::changePersistentIndex() is heavily underdocumented, so I probably got it wrong. Use beginResetModel()/endResetModel() to guard "global" changes in the model instead of layoutAboutToBeChanged()/layoutChanged(). This should hopefully get rid of all the spurious crashes deep in the Qt model implementation. Related: bug 294097 FIXED-IN:4.8.1 M +6 -28 model/kgpgitemmodel.cpp M +1 -2 model/kgpgitemmodel.h http://commits.kde.org/kgpg/751c40508de14dfc4f756ec6e5388d849d63004f
*** Bug 306042 has been marked as a duplicate of this bug. ***