Bug 220827

Summary: Bookmark Editor crashes when pressing the Undo button after moving a bookmark [TreeItem::deleteChildren, CreateCommand::undo, MoveCommand::undo]
Product: [Applications] keditbookmarks Reporter: Panagiotis Papadopoulos <pano9000>
Component: generalAssignee: Konqueror Bugs <konqueror-bugs-null>
Status: RESOLVED WORKSFORME    
Severity: crash CC: hunkirdowne, krogar, maris.kde, xavier
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: keditbookmarks undo crash bt
New crash information added by DrKonqi
New crash information added by DrKonqi

Description Panagiotis Papadopoulos 2009-12-31 17:32:21 UTC
Application: keditbookmarks (4.3.85 (KDE 4.3.85 (KDE 4.4 Beta2)))
KDE Platform Version: 4.3.85 (KDE 4.3.85 (KDE 4.4 Beta2))
Qt Version: 4.6.0
Operating System: Linux 2.6.32-ARCH i686
Distribution (Platform): Archlinux Packages

-- Information about the crash:
The Bookmark Editor crashes when pressing the Undo button after moving a bookmark.


The crash can be reproduced everytime.

 -- Backtrace:
Application: Bookmark Editor (kdeinit4), signal: Segmentation fault
[KCrash Handler]
#6  0xb373e5ec in TreeItem::deleteChildren(int, int) () from /usr/lib/libkdeinit4_keditbookmarks.so
#7  0xb3723fab in CreateCommand::undo() () from /usr/lib/libkdeinit4_keditbookmarks.so
#8  0xb3723a20 in MoveCommand::undo() () from /usr/lib/libkdeinit4_keditbookmarks.so
#9  0xb67d54e8 in QUndoCommand::undo (this=0x8466d58) at util/qundostack.cpp:226
#10 0xb67d6bb7 in QUndoStack::undo (this=0x8343718) at util/qundostack.cpp:659
#11 0xb67fdeb3 in QUndoStack::qt_metacall (this=0x8343718, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0xbfb3c138) at .moc/release-shared/moc_qundostack.cpp:105
#12 0xb6f27052 in KUndoStack::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libkdeui.so.5
#13 0xb6b90e7a in QMetaObject::metacall (object=0x8343718, cl=QMetaObject::InvokeMetaMethod, idx=12, argv=0xbfb3c138) at kernel/qmetaobject.cpp:237
#14 0xb6b9f44d in QMetaObject::activate (sender=0x833fd08, m=0xb69ef478, local_signal_index=1, argv=<value optimized out>) at kernel/qobject.cpp:3294
#15 0xb60d34c9 in QAction::triggered (this=0x833fd08, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#16 0xb60d563c in QAction::activate (this=0x833fd08, event=QAction::Trigger) at kernel/qaction.cpp:1245
#17 0xb65b9c52 in QAction::trigger (this=0x0) at ../../include/QtGui/../../src/gui/kernel/qaction.h:218
#18 QToolButton::nextCheckState (this=0x0) at widgets/qtoolbutton.cpp:1147
#19 0xb64d84e3 in QAbstractButtonPrivate::click (this=0x838fac0) at widgets/qabstractbutton.cpp:528
#20 0xb64d87d1 in QAbstractButton::mouseReleaseEvent (this=0x838faa0, e=0xbfb3c904) at widgets/qabstractbutton.cpp:1118
#21 0xb65ba11c in QToolButton::mouseReleaseEvent (this=0x838faa0, e=0xbfb3c904) at widgets/qtoolbutton.cpp:721
#22 0xb613629e in QWidget::event (this=0x838faa0, event=0xbfb3c904) at kernel/qwidget.cpp:7974
#23 0xb64d757e in QAbstractButton::event (this=0x838faa0, e=0x0) at widgets/qabstractbutton.cpp:1080
#24 0xb65bcc4a in QToolButton::event (this=0x838faa0, event=0xbfb3c904) at widgets/qtoolbutton.cpp:1163
#25 0xb60d9c1c in QApplicationPrivate::notify_helper (this=0x82d96c8, receiver=0x838faa0, e=0xbfb3c904) at kernel/qapplication.cpp:4242
#26 0xb60e134d in QApplication::notify (this=0xbfb3d234, receiver=0x838faa0, e=0xbfb3c904) at kernel/qapplication.cpp:3822
#27 0xb6e7ec9a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#28 0xb6b8bc6b in QCoreApplication::notifyInternal (this=0xbfb3d234, receiver=0x838faa0, event=0xbfb3c904) at kernel/qcoreapplication.cpp:704
#29 0xb60e0164 in QCoreApplication::sendEvent (receiver=0x838faa0, event=0xbfb3c904, alienWidget=0x838faa0, nativeWidget=0x83453f0, buttonDown=0xb6a0a660, lastMouseReceiver=..., spontaneous=true)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#30 QApplicationPrivate::sendMouseEvent (receiver=0x838faa0, event=0xbfb3c904, alienWidget=0x838faa0, nativeWidget=0x83453f0, buttonDown=0xb6a0a660, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:2956
#31 0xb61689ac in QETWidget::translateMouseEvent (this=0x83453f0, event=0xbfb3cd50) at kernel/qapplication_x11.cpp:4368
#32 0xb6167ed3 in QApplication::x11ProcessEvent (this=0xbfb3d234, event=0xbfb3cd50) at kernel/qapplication_x11.cpp:3379
#33 0xb6194c52 in x11EventSourceDispatch (s=0x82dc640, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#34 0xb58b7378 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#35 0xb58babf0 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#36 0xb58bad23 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#37 0xb6bb76e5 in QEventDispatcherGlib::processEvents (this=0x82d9688, flags=...) at kernel/qeventdispatcher_glib.cpp:407
#38 0xb61947b5 in QGuiEventDispatcherGlib::processEvents (this=0x82d9688, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#39 0xb6b8a2a9 in QEventLoop::processEvents (this=0xbfb3d044, flags=) at kernel/qeventloop.cpp:149
#40 0xb6b8a6fa in QEventLoop::exec (this=0xbfb3d044, flags=...) at kernel/qeventloop.cpp:201
#41 0xb6b8e86f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#42 0xb60d9cb7 in QApplication::exec () at kernel/qapplication.cpp:3570
#43 0xb3717871 in kdemain () from /usr/lib/libkdeinit4_keditbookmarks.so
#44 0x0804e032 in _start ()

Reported using DrKonqi
Comment 1 Māris Nartišs 2010-06-09 18:24:34 UTC
Created attachment 47829 [details]
keditbookmarks undo crash bt

Similar to #233600
Could be related to #160679?
To get crash with similar backtrace, I have to move into folder and out more than one bookmark at the same time. Undo will work fine while folder and bookmarks are NOT corrupted. As soon as folder suddenly dissapears or bookmarks get corrupted (contents disappear), pressing Undo will result in described crash.

Running under valgrind reveals nothing interesting. 
Still keditbookmarks leaves strange messages in cli:
keditbookmarks(25843)/kdeui (kdelibs): Attempt to use QAction "edit_undo" with KXMLGUIFactory! 
keditbookmarks(25843)/kdeui (kdelibs): Attempt to use QAction "edit_redo" with KXMLGUIFactory! 
BookmarkFolderView::bookmarkForIndex QModelIndex(0,0,0xe66ec60,BookmarkFolderViewFilterModel(0xe5af0b0) )  
BookmarkFolderView::bookmarkForIndex QModeBookmarkFolderView::bookmarkForIndex QModelIndex(0,0,0xe66ec60,BookmarkFolderViewFilterModel(0xe5af0b0) )  
BookmarkFolderView::bookmarkForIndex QModelIndex(0,0,0xe66ec60,BookmarkFolderViewFilterModel(0xe5af0b0) )  
keditbookmarks(25843) KBookmarkManager::findByAddress: KBookmarkManager::findByAddress: couldn't find item  "/18/2" 
keditbookmarks(25843) KBookmarkManager::findByAddress: KBookmarkManager::findByAddress: couldn't find item  "/18/1" 
keditbookmarks(25843) KBookmarkManager::findByAddress: KBookmarkManager::findByAddress: couldn't find item  "/18/0" 
keditbookmarks(25843)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:lIndex(0,0,0xe66ec60,BookmarkFolderViewFilterModel(0xe5af0b0) ) 


Tested with KDE 4.4.4. on ~AMD64 Gentoo
Comment 2 Māris Nartišs 2010-09-21 13:09:42 UTC
Created attachment 51855 [details]
New crash information added by DrKonqi

keditbookmarks (4.5.1 (KDE 4.5.1)) on KDE Platform 4.5.1 (KDE 4.5.1) using Qt 4.6.3

- What I was doing when the application crashed:

Steps to reproduce:
In bookmark editor create a new folder;
Create a two new bookmarks;
Select both new bookmarks;
Drag'n'drop to new folder. 
If it has not crashed yet, press "Undo" button.

Moving around single bookmark will work just fine, all fun starts when moving more than one bookmark at a time.

-- Backtrace (Reduced):
#6  detach (this=0x0, first=-1, last=-1) at /usr/include/qt4/QtCore/qlist.h:122
#7  begin (this=0x0, first=-1, last=-1) at /usr/include/qt4/QtCore/qlist.h:248
#8  TreeItem::deleteChildren (this=0x0, first=-1, last=-1) at /var/tmp/portage/kde-base/keditbookmarks-4.5.1/work/keditbookmarks-4.5.1/keditbookmarks/kbookmarkmodel/treeitem.cpp:76
#9  0x00007fd8026e60f9 in KBookmarkModel::removeBookmark (this=0x11a1360, bookmark=) at /var/tmp/portage/kde-base/keditbookmarks-4.5.1/work/keditbookmarks-4.5.1/keditbookmarks/kbookmarkmodel/model.cpp:445
#10 0x00007fd8026e20ff in CreateCommand::undo (this=0x1827850) at /var/tmp/portage/kde-base/keditbookmarks-4.5.1/work/keditbookmarks-4.5.1/keditbookmarks/kbookmarkmodel/commands.cpp:156
Comment 3 Tommi Tervo 2010-09-26 12:49:41 UTC
*** Bug 252392 has been marked as a duplicate of this bug. ***
Comment 4 Tommi Tervo 2010-09-26 12:50:14 UTC
*** Bug 233600 has been marked as a duplicate of this bug. ***
Comment 5 Xavier Brochard 2010-10-11 22:47:12 UTC
Created attachment 52425 [details]
New crash information added by DrKonqi

keditbookmarks (4.5.1 (KDE 4.5.1)) on KDE Platform 4.5.1 (KDE 4.5.1) using Qt 4.7.0

- What I was doing when the application crashed:
Moving several bookmark in a folder. This results in a corrupted view. Keditboomarks crashed when I press the undo button.

-- Backtrace (Reduced):
#6  detach (this=0x0, first=-1, last=-1) at /usr/include/qt4/QtCore/qlist.h:122
#7  begin (this=0x0, first=-1, last=-1) at /usr/include/qt4/QtCore/qlist.h:248
#8  TreeItem::deleteChildren (this=0x0, first=-1, last=-1) at ../../../../apps/keditbookmarks/kbookmarkmodel/treeitem.cpp:76
#9  0x00007f2045161e76 in KBookmarkModel::removeBookmark (this=0x1498390, bookmark=) at ../../../../apps/keditbookmarks/kbookmarkmodel/model.cpp:445
#10 0x00007f204515d78a in CreateCommand::undo (this=0x156d3c0) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:156
Comment 6 Andrew Crouthamel 2018-10-29 22:36:08 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 7 Bug Janitor Service 2018-11-13 14:23:19 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 8 Bug Janitor Service 2018-11-28 04:51:47 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!