Summary: | Dolphin crashed when deleting a tag [QListWidgetItem::text, KEditTagsDialog::deleteTag] | ||
---|---|---|---|
Product: | [Unmaintained] nepomuk | Reporter: | sircoram <marco_ranaldi> |
Component: | general | Assignee: | Vishesh Handa <me> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | andresbajotierra, arthur, g.crinux, kde.uat, martin.kampas+kdebugs, me, michal.zajac+kde.org, peter.penz19, steffen.ohrendorf |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi New crash information added by DrKonqi New crash information added by DrKonqi |
Description
sircoram
2010-08-22 12:27:42 UTC
*** Bug 259768 has been marked as a duplicate of this bug. *** Created attachment 56831 [details]
New crash information added by DrKonqi
dolphin (1.6) on KDE Platform 4.6.00 (4.6.0) using Qt 4.7.0
- What I was doing when the application crashed:
As the OP I deleted some tags :) I promise I won't do that again.
-- Backtrace (Reduced):
#6 text (this=0x7fff76564040) at /usr/include/qt4/QtGui/qlistwidget.h:90
#7 KEditTagsDialog::deleteTag (this=0x7fff76564040) at ../../nepomuk/ui/kedittagsdialog.cpp:217
#8 0x00007f2aa2a06584 in KEditTagsDialog::qt_metacall (this=0x7fff76564040, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff76562a30) at ./kedittagsdialog_p.moc:83
[...]
#10 0x00007f2aa1267402 in QAbstractButton::clicked (this=0x7fff76564040, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#11 0x00007f2aa0f61eeb in QAbstractButtonPrivate::emitClicked (this=0x1e24880) at widgets/qabstractbutton.cpp:546
Created attachment 57423 [details]
New crash information added by DrKonqi
dolphin (1.6) on KDE Platform 4.6.00 (4.6.0) using Qt 4.7.1
- What I was doing when the application crashed:
Trying to remove couple of tags. It crashes when you use keyboard to confirm the operation and do not move mouse cursor between deleting two tags. I.e. (1) click on the X button, (2) press Alt+D to confirm the operation (3) click again without moving cursor (next tag is under cursor)
-- Backtrace (Reduced):
#6 text (this=0x7fffab4a5a90) at /usr/include/qt4/QtGui/qlistwidget.h:90
#7 KEditTagsDialog::deleteTag (this=0x7fffab4a5a90) at /var/tmp/portage/kde-base/kdelibs-4.6.0-r1/work/kdelibs-4.6.0/nepomuk/ui/kedittagsdialog.cpp:217
#8 0x0000003ef626b214 in KEditTagsDialog::qt_metacall (this=0x7fffab4a5a90, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffab4a4470) at /var/tmp/portage/kde-base/kdelibs-4.6.0-r1/work/kdelibs-4.6.0_build/nepomuk/kedittagsdialog_p.moc:83
[...]
#10 0x0000003ef32126c3 in QAbstractButton::clicked (this=<value optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#11 0x0000003ef2f5e07c in QAbstractButtonPrivate::emitClicked (this=<value optimized out>) at widgets/qabstractbutton.cpp:546
Created attachment 60185 [details]
New crash information added by DrKonqi
dolphin (1.6) on KDE Platform 4.6.00 (4.6.0) "release 6" using Qt 4.7.1
- What I was doing when the application crashed:
Same as OP, removed mainly some "res://" tags.
- Unusual behavior I noticed:
Found many "res://" tags in the available tags.
-- Backtrace (Reduced):
#6 text (this=0x0) at /usr/include/QtGui/qlistwidget.h:90
#7 KEditTagsDialog::deleteTag (this=0x7fff1f45b710) at /usr/src/debug/kdelibs-4.6.0/nepomuk/ui/kedittagsdialog.cpp:217
#8 0x00007fca755f5c9c in KEditTagsDialog::qt_metacall (this=0x7fff1f45b710, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff1f45a0a0) at /usr/src/debug/kdelibs-4.6.0/build/nepomuk/kedittagsdialog_p.moc:83
[...]
#10 0x00007fca7bcc4a32 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#11 0x00007fca7ba0cd9b in QAbstractButtonPrivate::emitClicked (this=<optimized out>) at widgets/qabstractbutton.cpp:546
Created attachment 61259 [details]
New crash information added by DrKonqi
dolphin (1.6.1) on KDE Platform 4.6.4 (4.6.4) using Qt 4.7.2
- What I was doing when the application crashed:
Exactly as in the main bug already reported.
-- Backtrace (Reduced):
#7 text (this=0xbfde8d08) at /usr/include/qt4/QtGui/qlistwidget.h:90
#8 KEditTagsDialog::deleteTag (this=0xbfde8d08) at ../../nepomuk/ui/kedittagsdialog.cpp:217
#9 0x00558cb3 in KEditTagsDialog::qt_metacall (this=0xbfde8d08, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xbfde7d58) at ./kedittagsdialog_p.moc:83
[...]
#12 0x0977bd39 in QAbstractButton::clicked (this=0x9f00c80, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#13 0x09493896 in QAbstractButtonPrivate::emitClicked (this=0xa1cd798) at widgets/qabstractbutton.cpp:546
Confirmed. I happened to stumble on this bug on my own. Exacts steps to reproduce - 1. Open the "Edit Tags" dialog 2. Click on the 'X' to delete a tag, and donot move your mouse at all. 3. Press Alt+D ( The shortcut to confirm deletion ) 4. Without moving the mouse, click on 'X' again. I've looked at the code, and I'm not sure I can easily produce a simple fix. The problem is that m_deleteCandidate is not set since it is only set on mouse move events. Either way this code is very old, and should be using a proper asynchronous model. Git commit c8fcee890200f39993b2131d0ac3697d5fddcf4d by Vishesh Handa. Committed on 29/07/2011 at 14:13. Pushed by vhanda into branch 'KDE/4.7'. Allow deletion of multiple tags without moving the mouse The dialog used the mouse move event to sent the m_deleteCandidate, and then set m_deleteCandidate = 0. On trying to delete the next tag, the deleteTag() function would assert as m_deleteCandidate was 0 m_deleteCandidate is now set to next tag after deletion of a tag. BUG: 248689 REVIEW: 102111 M +12 -7 nepomuk/ui/kedittagsdialog.cpp http://commits.kde.org/kdelibs/c8fcee890200f39993b2131d0ac3697d5fddcf4d Git commit 94c82bebe875d724522b809fe520bfda6570aed8 by Vishesh Handa. Committed on 29/07/2011 at 14:13. Pushed by vhanda into branch 'master'. Allow deletion of multiple tags without moving the mouse The dialog used the mouse move event to sent the m_deleteCandidate, and then set m_deleteCandidate = 0. On trying to delete the next tag, the deleteTag() function would assert as m_deleteCandidate was 0 m_deleteCandidate is now set to next tag after deletion of a tag. BUG: 248689 REVIEW: 102111 M +12 -7 nepomuk/ui/kedittagsdialog.cpp http://commits.kde.org/kdelibs/94c82bebe875d724522b809fe520bfda6570aed8 *** Bug 275859 has been marked as a duplicate of this bug. *** |