Bug 258505

Summary: Tried to drag the links into a folder [qDeleteAll<QList<TreeItem*> >, ~TreeItem, TreeItem::deleteChildren, KBookmarkModel::removeBookmark]
Product: [Applications] keditbookmarks Reporter: darkiiiiii
Component: generalAssignee: David Faure <faure>
Status: RESOLVED FIXED    
Severity: crash CC: andresbajotierra, bugskdeorg, daramatu, darkiiiiii, faure, fjperezor, joshua.mdza, k, kdebugs.anon134, kevin.clevenger, kivech.brach, kruno0407, mmodem00, nick, pourtouteslesclasses, richard.llom, sg.computer, sgies1963, web
Priority: NOR    
Version: 4.10.1   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
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
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi
Sample bookmarks.xml which triggers the crash.

Description darkiiiiii 2010-12-01 18:42:59 UTC
Application: keditbookmarks (4.5.1 (KDE 4.5.1))
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-23-generic i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:

Was trying to drag some links into a folder on the bookmark editor.

-- Backtrace:
Application: Bookmark Editor (keditbookmarks), signal: Segmentation fault
[Current thread is 1 (Thread 0xb784b710 (LWP 2705))]

Thread 2 (Thread 0xb47f7b70 (LWP 2706)):
#0  0x07068ea6 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#1  0x07069279 in ?? () from /lib/libglib-2.0.so.0
#2  0x07069848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x009e459f in QEventDispatcherGlib::processEvents (this=0x855db40, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#4  0x009b4609 in QEventLoop::processEvents (this=0xb47f7290, flags=) at kernel/qeventloop.cpp:149
#5  0x009b4a8a in QEventLoop::exec (this=0xb47f7290, flags=...) at kernel/qeventloop.cpp:201
#6  0x008b0b7e in QThread::exec (this=0x8575040) at thread/qthread.cpp:490
#7  0x0099335b in QInotifyFileSystemWatcherEngine::run (this=0x8575040) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x008b3df9 in QThreadPrivate::start (arg=0x8575040) at thread/qthread_unix.cpp:266
#9  0x00273cc9 in start_thread (arg=0xb47f7b70) at pthread_create.c:304
#10 0x001e06be in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb784b710 (LWP 2705)):
[KCrash Handler]
#7  end (this=0x5, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:98
#8  end (this=0x5, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:258
#9  qDeleteAll<QList<TreeItem*> > (this=0x5, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#10 TreeItem::~TreeItem (this=0x5, __in_chrg=<value optimized out>) at ../../../../apps/keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#11 0x004b481e in TreeItem::deleteChildren (this=0x897e218, first=19, last=19) at ../../../../apps/keditbookmarks/kbookmarkmodel/treeitem.cpp:80
#12 0x004b20e8 in KBookmarkModel::removeBookmark (this=0x85095c8, bookmark=...) at ../../../../apps/keditbookmarks/kbookmarkmodel/model.cpp:445
#13 0x004acfe5 in CreateCommand::undo (this=0x89689c0) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:156
#14 0x004af90a in DeleteCommand::redo (this=0x89704c8) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:315
#15 0x01fddb93 in QUndoCommand::redo (this=0x8965568) at util/qundostack.cpp:208
#16 0x004afbea in DeleteCommand::redo (this=0x8968a50) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:306
#17 0x01fddb93 in QUndoCommand::redo (this=0x8963210) at util/qundostack.cpp:208
#18 0x004afbea in DeleteCommand::redo (this=0x8962a20) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:306
#19 0x004adc2e in MoveCommand::redo (this=0x885e648) at ../../../../apps/keditbookmarks/kbookmarkmodel/commands.cpp:372
#20 0x01fddb93 in QUndoCommand::redo (this=0x887b3f0) at util/qundostack.cpp:208
#21 0x01fdf605 in QUndoStack::push (this=0x8505c34, cmd=0x887b3f0) at util/qundostack.cpp:541
#22 0x004ac736 in CommandHistory::addCommand (this=0x8505bc8, cmd=0x887b3f0) at ../../../../apps/keditbookmarks/kbookmarkmodel/commandhistory.cpp:103
#23 0x004b2fd8 in KBookmarkModel::dropMimeData (this=0x85095c8, data=0x8905ce8, action=Qt::MoveAction, row=-1, column=-1, parent=...) at ../../../../apps/keditbookmarks/kbookmarkmodel/model.cpp:375
#24 0x01e63cc3 in QAbstractItemView::dropEvent (this=0x8547d00, event=0xbfff1f20) at itemviews/qabstractitemview.cpp:1981
#25 0x018f5dd0 in QWidget::event (this=0x8547d00, event=0xbfff1f20) at kernel/qwidget.cpp:8377
#26 0x01d17763 in QFrame::event (this=0x8547d00, e=0xbfff1f20) at widgets/qframe.cpp:557
#27 0x01db4a82 in QAbstractScrollArea::viewportEvent (this=0x1, e=0x13) at widgets/qabstractscrollarea.cpp:1043
#28 0x01e710f7 in QAbstractItemView::viewportEvent (this=0x8547d00, event=0xbfff1f20) at itemviews/qabstractitemview.cpp:1619
#29 0x01eb3883 in QTreeView::viewportEvent (this=0x8547d00, event=0xbfff1f20) at itemviews/qtreeview.cpp:1256
#30 0x01db74d5 in viewportEvent (this=0x854cbb0, o=0x854b998, e=0xbfff1f20) at widgets/qabstractscrollarea_p.h:100
#31 QAbstractScrollAreaFilter::eventFilter (this=0x854cbb0, o=0x854b998, e=0xbfff1f20) at widgets/qabstractscrollarea_p.h:116
#32 0x009b529a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x84205b8, receiver=0x854b998, event=0xbfff1f20) at kernel/qcoreapplication.cpp:847
#33 0x01897fb9 in QApplicationPrivate::notify_helper (this=0x84205b8, receiver=0x854b998, e=0xbfff1f20) at kernel/qapplication.cpp:4392
#34 0x0189e51f in QApplication::notify (this=0xbfff430c, receiver=0x854b998, e=0xbfff1f20) at kernel/qapplication.cpp:4202
#35 0x00fe768a in KApplication::notify (this=0xbfff430c, receiver=0x854b998, event=0xbfff1f20) at ../../kdeui/kernel/kapplication.cpp:310
#36 0x009b5b3b in QCoreApplication::notifyInternal (this=0xbfff430c, receiver=0x854b998, event=0xbfff1f20) at kernel/qcoreapplication.cpp:732
#37 0x01939daa in sendEvent (this=0x8424060, xe=0xbfff202c, passive=false) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#38 QX11Data::xdndHandleDrop (this=0x8424060, xe=0xbfff202c, passive=false) at kernel/qdnd_x11.cpp:1183
#39 0x0193eceb in QDragManager::drop (this=0x888aae0) at kernel/qdnd_x11.cpp:1725
#40 0x0193eeea in QDragManager::eventFilter (this=0x888aae0, o=0x88a1e68, e=0xbfff2590) at kernel/qdnd_x11.cpp:1312
#41 0x009b535c in QCoreApplicationPrivate::sendThroughApplicationEventFilters (this=0x84205b8, receiver=0x88a1e68, event=0xbfff2590) at kernel/qcoreapplication.cpp:828
#42 0x01897f63 in QApplicationPrivate::notify_helper (this=0x84205b8, receiver=0x88a1e68, e=0xbfff2590) at kernel/qapplication.cpp:4371
#43 0x0189ec2e in QApplication::notify (this=0xbfff430c, receiver=0x88a1e68, e=0xbfff2590) at kernel/qapplication.cpp:3959
#44 0x00fe768a in KApplication::notify (this=0xbfff430c, receiver=0x88a1e68, event=0xbfff2590) at ../../kdeui/kernel/kapplication.cpp:310
#45 0x009b5b3b in QCoreApplication::notifyInternal (this=0xbfff430c, receiver=0x88a1e68, event=0xbfff2590) at kernel/qcoreapplication.cpp:732
#46 0x0189d094 in sendEvent (receiver=0x88a1e68, event=0xbfff2590, alienWidget=0x0, nativeWidget=0x88a1e68, buttonDown=0x22323c0, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#47 QApplicationPrivate::sendMouseEvent (receiver=0x88a1e68, event=0xbfff2590, alienWidget=0x0, nativeWidget=0x88a1e68, buttonDown=0x22323c0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3058
#48 0x0192bd10 in QETWidget::translateMouseEvent (this=0x88a1e68, event=0xbfff2aac) at kernel/qapplication_x11.cpp:4403
#49 0x0192b151 in QApplication::x11ProcessEvent (this=0xbfff430c, event=0xbfff2aac) at kernel/qapplication_x11.cpp:3414
#50 0x0195a36a in x11EventSourceDispatch (s=0x84235e8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#51 0x07065855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#52 0x07069668 in ?? () from /lib/libglib-2.0.so.0
#53 0x07069848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#54 0x009e4565 in QEventDispatcherGlib::processEvents (this=0x840b310, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#55 0x01959be5 in QGuiEventDispatcherGlib::processEvents (this=0x840b310, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#56 0x009b4609 in QEventLoop::processEvents (this=0x85643b0, flags=) at kernel/qeventloop.cpp:149
#57 0x009b4a8a in QEventLoop::exec (this=0x85643b0, flags=...) at kernel/qeventloop.cpp:201
#58 0x0193f5f7 in QDragManager::drag (this=0x888aae0, o=0x879bab8) at kernel/qdnd_x11.cpp:1981
#59 0x018afd4e in QDrag::exec (this=0x879bab8, supportedActions=..., defaultDropAction=Qt::MoveAction) at kernel/qdrag.cpp:284
#60 0x01e6e8ac in QAbstractItemView::startDrag (this=0x8547d00, supportedActions=...) at itemviews/qabstractitemview.cpp:3437
#61 0x01e6c33a in QAbstractItemView::mouseMoveEvent (this=0x8547d00, event=0xbfff3910) at itemviews/qabstractitemview.cpp:1700
#62 0x01eb2f74 in QTreeView::mouseMoveEvent (this=0x8547d00, event=0xbfff3910) at itemviews/qtreeview.cpp:1902
#63 0x018f5caa in QWidget::event (this=0x8547d00, event=0xbfff3910) at kernel/qwidget.cpp:8172
#64 0x01d17763 in QFrame::event (this=0x8547d00, e=0xbfff3910) at widgets/qframe.cpp:557
#65 0x01db4a82 in QAbstractScrollArea::viewportEvent (this=0x1, e=0x13) at widgets/qabstractscrollarea.cpp:1043
#66 0x01e710f7 in QAbstractItemView::viewportEvent (this=0x8547d00, event=0xbfff3910) at itemviews/qabstractitemview.cpp:1619
#67 0x01eb3883 in QTreeView::viewportEvent (this=0x8547d00, event=0xbfff3910) at itemviews/qtreeview.cpp:1256
#68 0x01db74d5 in viewportEvent (this=0x854cbb0, o=0x854b998, e=0xbfff3910) at widgets/qabstractscrollarea_p.h:100
#69 QAbstractScrollAreaFilter::eventFilter (this=0x854cbb0, o=0x854b998, e=0xbfff3910) at widgets/qabstractscrollarea_p.h:116
#70 0x009b529a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x84205b8, receiver=0x854b998, event=0xbfff3910) at kernel/qcoreapplication.cpp:847
#71 0x01897fb9 in QApplicationPrivate::notify_helper (this=0x84205b8, receiver=0x854b998, e=0xbfff3910) at kernel/qapplication.cpp:4392
#72 0x0189ec2e in QApplication::notify (this=0xbfff430c, receiver=0x854b998, e=0xbfff3910) at kernel/qapplication.cpp:3959
#73 0x00fe768a in KApplication::notify (this=0xbfff430c, receiver=0x854b998, event=0xbfff3910) at ../../kdeui/kernel/kapplication.cpp:310
#74 0x009b5b3b in QCoreApplication::notifyInternal (this=0xbfff430c, receiver=0x854b998, event=0xbfff3910) at kernel/qcoreapplication.cpp:732
#75 0x0189d094 in sendEvent (receiver=0x854b998, event=0xbfff3910, alienWidget=0x854b998, nativeWidget=0x858bee8, buttonDown=0x22323c0, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#76 QApplicationPrivate::sendMouseEvent (receiver=0x854b998, event=0xbfff3910, alienWidget=0x854b998, nativeWidget=0x858bee8, buttonDown=0x22323c0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3058
#77 0x0192bd10 in QETWidget::translateMouseEvent (this=0x858bee8, event=0xbfff3e2c) at kernel/qapplication_x11.cpp:4403
#78 0x0192b151 in QApplication::x11ProcessEvent (this=0xbfff430c, event=0xbfff3e2c) at kernel/qapplication_x11.cpp:3414
#79 0x0195a36a in x11EventSourceDispatch (s=0x84235e8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#80 0x07065855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#81 0x07069668 in ?? () from /lib/libglib-2.0.so.0
#82 0x07069848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#83 0x009e4565 in QEventDispatcherGlib::processEvents (this=0x840b310, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#84 0x01959be5 in QGuiEventDispatcherGlib::processEvents (this=0x840b310, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#85 0x009b4609 in QEventLoop::processEvents (this=0xbfff4124, flags=) at kernel/qeventloop.cpp:149
#86 0x009b4a8a in QEventLoop::exec (this=0xbfff4124, flags=...) at kernel/qeventloop.cpp:201
#87 0x009b900f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#88 0x01896e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#89 0x0082a051 in kdemain (argc=4, argv=0xbfff46a4) at ../../../apps/keditbookmarks/main.cpp:212
#90 0x080485ab in main (argc=4, argv=0xbfff46a4) at keditbookmarks_dummy.cpp:3

Reported using DrKonqi
Comment 1 darkiiiiii 2010-12-01 18:46:41 UTC
Created attachment 53947 [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:

Some thing, was dragging several items into a folder on bookmark editor. I think it has to do with the amount of items maybe? because if I dragged a couple or so it didn't crash.

-- Backtrace (Reduced):
#7  end (this=0x1, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:98
#8  end (this=0x1, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:258
#9  qDeleteAll<QList<TreeItem*> > (this=0x1, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#10 TreeItem::~TreeItem (this=0x1, __in_chrg=<value optimized out>) at ../../../../apps/keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#11 0x0066b81e in TreeItem::deleteChildren (this=0x9720d08, first=1, last=1) at ../../../../apps/keditbookmarks/kbookmarkmodel/treeitem.cpp:80
Comment 2 Dario Andres 2010-12-31 23:34:17 UTC
[Comment from a bug triager]
From bug 261642:
-- Information about the crash:
I was sorting my bookmarks and bookmark folders and when I dropped the icon in
the desired position it just suddenly crashed
Comment 3 Dario Andres 2010-12-31 23:34:24 UTC
*** Bug 261642 has been marked as a duplicate of this bug. ***
Comment 4 kivech.brach 2011-04-23 13:52:04 UTC
Created attachment 59245 [details]
New crash information added by DrKonqi

keditbookmarks (4.6.2 (4.6.2)) on KDE Platform 4.6.2 (4.6.2) using Qt 4.7.2

- What I was doing when the application crashed:

When dragging multiple links into a different folder this crash happened.
However, when dragging the same links one by one, there is no problem whatsoever.

-- Backtrace (Reduced):
#6  end (this=0x900000001, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:98
#7  end (this=0x900000001, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qlist.h:258
#8  qDeleteAll<QList<TreeItem*> > (this=0x900000001, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#9  TreeItem::~TreeItem (this=0x900000001, __in_chrg=<value optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#10 0x00007f7be2af3431 in TreeItem::deleteChildren (this=0x2069ac0, first=<value optimized out>, last=<value optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:80
Comment 5 AnnoLoki 2011-10-25 00:35:08 UTC
Created attachment 64849 [details]
New crash information added by DrKonqi

keditbookmarks (4.7.2 (4.7.2)) on KDE Platform 4.7.2 (4.7.2) using Qt 4.7.4

- What I was doing when the application crashed:

* Select two or more bookmarks or folders and moving them from one folder to another. Crashes 100% of the time doing this.

* Moving a single object (bookmark or folder) is fine.
* Moving multiple objects within a folder (reordering) is fine. 
* Moving a single folder that contains many bookmarks/subfolders is fine.

-- Backtrace (Reduced):
#6  0x00000031f0a12190 in end (this=0x1523d98) at /usr/include/qt4/QtCore/qlist.h:98
#7  end (this=0x1523d98) at /usr/include/qt4/QtCore/qlist.h:258
#8  qDeleteAll<QList<TreeItem*> > (c=...) at /usr/include/qt4/QtCore/qalgorithms.h:330
#9  TreeItem::~TreeItem (this=0x1523d98, __in_chrg=<optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#10 0x00000031f0a12279 in TreeItem::deleteChildren (this=0x186bfe0, first=<optimized out>, last=<optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:80
Comment 6 Jekyll Wu 2012-06-23 15:19:10 UTC
*** Bug 281978 has been marked as a duplicate of this bug. ***
Comment 7 Jekyll Wu 2012-06-23 15:19:59 UTC
*** Bug 280293 has been marked as a duplicate of this bug. ***
Comment 8 Jekyll Wu 2012-06-23 15:20:10 UTC
*** Bug 273307 has been marked as a duplicate of this bug. ***
Comment 9 Kevin Clevenger 2012-10-22 18:30:56 UTC
Created attachment 74734 [details]
New crash information added by DrKonqi

keditbookmarks (4.9.2) on KDE Platform 4.9.2 using Qt 4.8.3

- What I was doing when the application crashed:

Moving bookmarks in the bookmark manager

-- Backtrace (Reduced):
#6  end (this=0x800000002) at /usr/include/QtCore/qlist.h:102
#7  end (this=0x800000002) at /usr/include/QtCore/qlist.h:271
#8  qDeleteAll<QList<TreeItem*> > (c=...) at /usr/include/QtCore/qalgorithms.h:330
#9  TreeItem::~TreeItem (this=0x800000002, __in_chrg=<optimized out>) at /usr/src/debug/kde-baseapps-4.9.2/keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#10 0x0000003528812438 in TreeItem::deleteChildren (this=0x1dd6b90, first=<optimized out>, last=<optimized out>) at /usr/src/debug/kde-baseapps-4.9.2/keditbookmarks/kbookmarkmodel/treeitem.cpp:80
Comment 10 Jekyll Wu 2012-10-25 03:28:47 UTC
*** Bug 308823 has been marked as a duplicate of this bug. ***
Comment 11 Jekyll Wu 2012-10-28 22:12:29 UTC
*** Bug 309168 has been marked as a duplicate of this bug. ***
Comment 12 Kevin Clevenger 2013-01-18 16:19:30 UTC
Created attachment 76542 [details]
New crash information added by DrKonqi

keditbookmarks (4.9.5) on KDE Platform 4.9.5 using Qt 4.8.4

- What I was doing when the application crashed:

Moving bookmarks in the bookmark manager. Is this *still* an issue?

-- Backtrace (Reduced):
#5  0x0000003946e1241e in TreeItem::deleteChildren(int, int) () from /lib64/libkbookmarkmodel_private.so.4
#6  0x0000003946e10b8d in KBookmarkModel::removeBookmark(KBookmark) () from /lib64/libkbookmarkmodel_private.so.4
#7  0x0000003946e0be5b in CreateCommand::undo() () from /lib64/libkbookmarkmodel_private.so.4
#8  0x0000003946e0e96a in DeleteCommand::redo() () from /lib64/libkbookmarkmodel_private.so.4
#9  0x0000003618015840 in QUndoCommand::redo() () from /lib64/libQtGui.so.4
Comment 13 Tommi Tervo 2013-03-23 17:15:13 UTC
*** Bug 317005 has been marked as a duplicate of this bug. ***
Comment 14 kdebugs.anon134 2013-03-24 10:52:39 UTC
Jekyll Wu suggested to me "bug 308823 is already marked as duplicate of bug 258505, so you should follow the suggestion of drkonqi (it should have) and add your crash information onto bug 258505 instead of bug 308823.", so here it is.

This problem (not a crash) is reproducible every time.

The network connection was and is working properly at the time of the malfunction.

KDE version 4.10.1 "release 545"
Distro is openSUSE 12.3 (x86_64)
OS is Linux 3.7.10-1.1-desktop x86_64

- What I was doing when the application malfunctioned:
1) opened keditbookmarks
2) immediately did Folder > Recursive Sort
3) keditbookmarks immediately crashed
4) drkonqi started
5) clicked "Report Bug" button
6) Dialog "Welcome to the Reporting Assistant" appeared.  Clicked the button labeled "Next".
7) Dialog "What do you know about the crash?" appeared.  Clicked the radio button labeled "Yes".  Changed drop-down menu to "Every time".  
8)  Checked box for option item "What i was doing when the application "Bookmark Editor" crashed".  Clicked button labeled "Next".
9)  Dialog "Fetching the Backtrace (Automatic Crash Information)" appeared.  Backtrace loaded Clicked the button labeled "Next".
10)  Dialog "Login into the KDE Bugtracking System" appeared.  My account detailes automatically filled in.  Clicked the button labeled "Login".  
11)  Dialog "Look for Possible Duplicate Reports" appeared.  clicked line item "308823 [Duplicate report] Crash on recursive sort".  Clicked button labeled "Open selected report".
12)  New dialog window "loading information about report 308823" appeared.  Dialog box labeled "Nested duplicate detected" appeared.  clicked button labeled "No, let me read the report I selected".
13)  New window titled "Bug Description", "Showing bug 308823" appeared.  clicked button "Suggest this crash is related".
14)  New dialog titled :Related Bug Report Appeared".  Clicked radio button labeled "Completely sure: attach my information to this report".  Clicked button labeled "Continue".
15)  Returned to window labeled "Look for Possible Duplicate Reports".  Clicked the button labeled "Next".
16)  Window labeled "Enter the Details about the Crash" appeared.  Entered the following into the text window:
"- What I was doing when the application crashed:
1) opened keditbookmarks
2) immediately did Folder > Recursive Sort
3) keditbookmarks immediately crashed

keditbookmarks frequently crashes during recursive sorting of bookmark folders in any location.

The crash can be reproduced every time.

My entire system was installed using official openSUSE packages from openSUSE repositories."
17)  Clicked the button labeled "Next".
18)  Window labeled "Preview the Report" appeared.  Clicked the button labeled "Next".
19)  Window labeled "Sending Crash Report" appeared.  Busy indicator begins rotating, and continues to rotate indefinitely.  drkonqi is not frozen nor crashed - the busy indicator just rotates indefinitely, and the crash report never finishes getting sent.

My entire system was installed using official openSUSE packages from openSUSE repositories.
Comment 15 Richard Llom 2013-03-24 13:44:47 UTC
Hello,
this bug seems strongly related to bug 28703. I would suggest to set a block/depends flag, "See also" or even as dup. And the kewords reproducible would be appropiate for both bugs.
@Jekyll Wu can you do this?

I also added a Valgrind trace to bug 28703, would be nice if a dev could take a look at this.
Comment 16 Myriam Schweingruber 2013-03-29 09:43:07 UTC
(In reply to comment #15)
> Hello,
> this bug seems strongly related to bug 28703. I would suggest to set a
> block/depends flag, "See also" or even as dup. And the kewords reproducible
> would be appropiate for both bugs.
> @Jekyll Wu can you do this?
> 
> I also added a Valgrind trace to bug 28703, would be nice if a dev could
> take a look at this.

You mean bug 287038 I guess. I let the others decide if this is a duplicate or a dependency on the other report, though.
Comment 17 David Faure 2013-05-05 21:23:45 UTC
These crashes seem to be about "dragging multiple links together", which is what I fixed in bug 287038.

If the crashes still happen in 4.10.4, please reopen.
Comment 18 Stefan Gies 2013-07-12 05:09:53 UTC
Created attachment 81068 [details]
New crash information added by DrKonqi

keditbookmarks (4.10.2) on KDE Platform 4.10.2 using Qt 4.8.4

- What I was doing when the application crashed:
After importing bookmarks from a HTML-File (bookmarks from Firefox)   I added the sorting option in the quickaccess toolbar. Then I tried to use the sorting option. After pressing the button the bookmark organizer failed with an error and I have to close the app.

-- Backtrace (Reduced):
#6  0x00007f341cb3152e in QListData::remove(int, int) () from /lib64/libQtCore.so.4
#7  0x00007f341e4126c5 in TreeItem::deleteChildren(int, int) () from /lib64/libkbookmarkmodel_private.so.4
#8  0x00007f341e410d7d in KBookmarkModel::removeBookmark(KBookmark) () from /lib64/libkbookmarkmodel_private.so.4
#9  0x00007f341e40c04b in CreateCommand::undo() () from /lib64/libkbookmarkmodel_private.so.4
#10 0x00007f341e40eb5a in DeleteCommand::redo() () from /lib64/libkbookmarkmodel_private.so.4
Comment 19 Cédric Bellegarde 2014-03-04 08:09:58 UTC
Created attachment 85406 [details]
New crash information added by DrKonqi

keditbookmarks (4.12.2) on KDE Platform 4.12.2 using Qt 4.8.6

- What I was doing when the application crashed:

Dragging folder in keditbookmarks, making it segfault.

-- Backtrace (Reduced):
#7  begin (this=0x0) at /usr/include/qt4/QtCore/qlist.h:267
#8  TreeItem::deleteChildren (this=0x0, first=-1, last=-1) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:76
#9  0x00007f6f4ad96162 in KBookmarkModel::removeBookmark (this=0x16f7080, bookmark=...) at ../../../keditbookmarks/kbookmarkmodel/model.cpp:451
#10 0x00007f6f4ad91851 in CreateCommand::undo (this=0x1b2f7b0) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:156
#11 0x00007f6f4ad9352e in DeleteCommand::redo (this=0x1d362e0) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:320
Comment 20 hystericalnightmare 2014-03-31 10:58:30 UTC
Created attachment 85868 [details]
New crash information added by DrKonqi

keditbookmarks (4.11.5) on KDE Platform 4.11.5 using Qt 4.8.4

- What I was doing when the application crashed:

Trying to move many bookmarks into a single folder.

-- Backtrace (Reduced):
#7  begin (this=0x0) at /usr/include/qt4/QtCore/qlist.h:267
#8  TreeItem::deleteChildren (this=0x0, first=-1, last=-1) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:76
#9  0x00007fb1bef20162 in KBookmarkModel::removeBookmark (this=0x1214340, bookmark=...) at ../../../keditbookmarks/kbookmarkmodel/model.cpp:451
#10 0x00007fb1bef1b851 in CreateCommand::undo (this=0x17f7360) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:156
#11 0x00007fb1bef1d52e in DeleteCommand::redo (this=0x17d7bc0) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:320
Comment 21 Jekyll Wu 2014-04-06 06:55:43 UTC
*** Bug 331850 has been marked as a duplicate of this bug. ***
Comment 22 Jekyll Wu 2014-04-06 06:55:50 UTC
*** Bug 333101 has been marked as a duplicate of this bug. ***
Comment 23 Jekyll Wu 2014-04-06 06:56:00 UTC
*** Bug 333100 has been marked as a duplicate of this bug. ***
Comment 24 Jekyll Wu 2014-04-06 07:03:10 UTC
*** Bug 292496 has been marked as a duplicate of this bug. ***
Comment 25 Ben Cooksley 2014-04-22 00:22:20 UTC
Removing hystericalnightmare@yahoo.com from CC list per abuse report.
Comment 26 Jekyll Wu 2014-05-12 00:54:38 UTC
*** Bug 334605 has been marked as a duplicate of this bug. ***
Comment 27 Jekyll Wu 2014-07-07 16:56:22 UTC
*** Bug 337156 has been marked as a duplicate of this bug. ***
Comment 28 Tommi Tervo 2014-08-13 09:26:06 UTC
*** Bug 338219 has been marked as a duplicate of this bug. ***
Comment 29 Nick Leverton 2015-03-21 06:49:14 UTC
Application: keditbookmarks (4.14.2)
KDE Platform Version: 4.14.2
Qt Version: 4.8.6
Operating System: Linux 3.16.0-4-amd64 x86_64
Distribution: Debian GNU/Linux 8.0 (jessie)

-- Information about the crash:

Crash still happening in KDE 4.14.2

- What I was doing when the application crashed:

Dragged two folders into another folder. Had done this a number of times
already in this session without problem.  The move succeded (verified after
restart), but immediately I get a crash and the same backtrace implicating
TreeItem::deleteChildren
KBookmarkModel::removeBookmark

-- Backtrace:
Application: Bookmark Editor (keditbookmarks), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#6  end (this=0x64006500727520) at /usr/include/qt4/QtCore/qlist.h:102
#7  end (this=0x64006500727520) at /usr/include/qt4/QtCore/qlist.h:271
#8  qDeleteAll<QList<TreeItem*> > (c=...) at /usr/include/qt4/QtCore/qalgorithms.h:330
#9  TreeItem::~TreeItem (this=0x64006500727520, __in_chrg=<optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:29
#10 0x00007f2cb9b86430 in TreeItem::deleteChildren (this=0x22ee920, first=<optimized out>, last=<optimized out>) at ../../../keditbookmarks/kbookmarkmodel/treeitem.cpp:80
#11 0x00007f2cb9b83c92 in KBookmarkModel::removeBookmark (this=0x2057900, bookmark=...) at ../../../keditbookmarks/kbookmarkmodel/model.cpp:451
#12 0x00007f2cb9b7ee01 in CreateCommand::undo (this=0x2233170) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:156
#13 0x00007f2cb9b80d21 in DeleteCommand::redo (this=0x318d8c0) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:320
#14 0x00007f2cb7a52160 in QUndoCommand::redo (this=0x32a05b0) at util/qundostack.cpp:208
#15 0x00007f2cb9b80fea in DeleteCommand::redo (this=0x3ecb2d0) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:311
#16 0x00007f2cb7a52160 in QUndoCommand::redo (this=0x47907b0) at util/qundostack.cpp:208
#17 0x00007f2cb9b80fea in DeleteCommand::redo (this=0x42ada80) at ../../../keditbookmarks/kbookmarkmodel/commands.cpp:311
#18 0x00007f2cb7a52160 in QUndoCommand::redo (this=0x4758e50) at util/qundostack.cpp:208
#19 0x00007f2cb7a53b53 in QUndoStack::push (this=0x20a75d8, cmd=cmd@entry=0x4758e50) at util/qundostack.cpp:583
#20 0x00007f2cb9b7eb3e in CommandHistory::addCommand (this=0x20a87b0, cmd=0x4758e50) at ../../../keditbookmarks/kbookmarkmodel/commandhistory.cpp:107
#21 0x00007f2cb9b852f7 in KBookmarkModel::dropMimeData (this=0x2057900, data=0x7f2cba12f620 <main_arena>, action=1655349136, row=1655349168, column=1, parent=...) at ../../../keditbookmarks/kbookmarkmodel/model.cpp:381
#22 0x00007f2cb78fffc1 in QAbstractItemView::dropEvent (this=0x20074d0, event=0x7fff62aaa690) at itemviews/qabstractitemview.cpp:2006
Comment 30 Nick Leverton 2015-03-22 00:02:18 UTC
Further comment just to note this has happened again during a further session of bookmark reorganisation.  This time I was dragging a folder to new siblings at the same parent level.  The change was not preserved on crash (don't think it was last time either, my mistake there).  
I'll see if I can capture it once more under debug.
Comment 31 Nick Leverton 2016-04-04 14:46:13 UTC
Created attachment 98245 [details]
Sample bookmarks.xml which triggers the crash.

Sorry it took me a while to trigger this again but I now have a way of reproducing it every time.

Run "kbookmarkeditor kde-bug-258505-bookmarks.xml"
Right-click in the right pane on the "Cyclone V" folder
Select "Recursive sort"
Observe that kbookmarkeditor immediately crashes.

I believe that this is the same bug despite my using "sort" instead of a manual drag and drop.  It just has many fewer steps between the QApplication::notify for the user event and the final sequence of undo/redo calls.  Specifically, both fail in the same way in the same place in the "end" handler of a recursive tree delete.
Comment 32 David Faure 2016-08-05 18:22:45 UTC
Nice testcase, I made it into a unittest and I found the two bugs (the null pointer in comments 19 & 20, and the crash in deleteChildren). First one fixed, second fix coming up.
Comment 33 David Faure 2016-08-05 21:00:50 UTC
Git commit e1dfe34c61ea4eae30b3392c953a99ed948bbc55 by David Faure.
Committed on 05/08/2016 at 20:59.
Pushed by dfaure into branch 'master'.

keditbookmarks: fix two bugs due to delayed-init in treeitem.

This led to asserts and/or crashes during drag-n-drop or sorting.

With thanks to Nick Leverton for the reproducible testcase (turned into
a unittest).

M  +8    -2    keditbookmarks/kbookmarkmodel/commands.cpp
M  +8    -1    keditbookmarks/kbookmarkmodel/model.cpp
M  +48   -0    keditbookmarks/kbookmarkmodel/tests/kbookmarkmodeltest.cpp
A  +414  -0    keditbookmarks/kbookmarkmodel/tests/kde-bug-258505-bookmarks.xml
M  +8    -0    keditbookmarks/kbookmarkmodel/treeitem.cpp

http://commits.kde.org/kde-baseapps/e1dfe34c61ea4eae30b3392c953a99ed948bbc55