Bug 73453 - Crash when removing multiple files from project
Summary: Crash when removing multiple files from project
Status: RESOLVED FIXED
Alias: None
Product: k3b
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: RedHat Enterprise Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Sebastian Trueg
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-01-25 12:10 UTC by Martin Wehner
Modified: 2006-04-27 22:54 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
Testcase (K3b Project) (31.32 KB, application/x-gzip)
2004-01-26 11:11 UTC, Martin Wehner
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Wehner 2004-01-25 12:10:02 UTC
Version:           0.11 (using KDE KDE 3.1.4)
Installed from:    RedHat RPMs
OS:          Linux

When I select multiple files in the project pane and remove them by pressing delete or selecting remove from the menu, K3b crashes. Removing a single file works. This happens both with a self compiled version and the FC1 rpms.

Sorry, no stack trace - my gdb is busted at the moment.
Comment 1 Sebastian Trueg 2004-01-26 10:27:45 UTC
please provide some more informations: which type of project for example.
Comment 2 Martin Wehner 2004-01-26 10:37:34 UTC
It happens with both Data DVD and CD projects. It only seems to happen for files, not directories, and only if you aren't deleting them all.

I managed to get a stack trace:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1108239424 (LWP 30906)]
0x40f825ad in __dynamic_cast () from /usr/lib/libstdc++.so.5
(gdb) bt
#0  0x40f825ad in __dynamic_cast () from /usr/lib/libstdc++.so.5
#1  0x406dde07 in K3bDataFileView::slotRemoveItem() ()
   from /usr/lib/libk3bproject.so.1
#2  0x406de2b7 in K3bDataFileView::qt_invoke(int, QUObject*) ()
   from /usr/lib/libk3bproject.so.1
#3  0x4121e6cc in QObject::activate_signal(QConnectionList*, QUObject*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#4  0x4121e504 in QObject::activate_signal(int) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#5  0x40b7661b in KAction::activated() () from /usr/lib/libkdeui.so.4
#6  0x40b6798f in KAction::slotActivated() () from /usr/lib/libkdeui.so.4
#7  0x40b76821 in KAction::qt_invoke(int, QUObject*) ()
   from /usr/lib/libkdeui.so.4
#8  0x4121e6cc in QObject::activate_signal(QConnectionList*, QUObject*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#9  0x4121e504 in QObject::activate_signal(int) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#10 0x40db1f3b in KAccelPrivate::menuItemActivated() ()
   from /usr/lib/libkdecore.so.4
#11 0x40db07dc in KAccelPrivate::eventFilter(QObject*, QEvent*) ()
   from /usr/lib/libkdecore.so.4
#12 0x4121c25e in QObject::activate_filters(QEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#13 0x4121c18c in QObject::event(QEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#14 0x412535af in QWidget::event(QEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#15 0x40b940f2 in KListView::event(QEvent*) () from /usr/lib/libkdeui.so.4
#16 0x411c2faf in QApplication::internalNotify(QObject*, QEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#17 0x411c2aae in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#18 0x40d45c0a in KApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libkdecore.so.4
#19 0x40daf774 in KAccelEventHandler::x11Event(_XEvent*) ()
   from /usr/lib/libkdecore.so.4
#20 0x40d4ae3f in KApplication::x11EventFilter(_XEvent*) ()
   from /usr/lib/libkdecore.so.4
#21 0x4114fe68 in qt_set_x11_event_filter(int (*)(_XEvent*)) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#22 0x4115968b in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#23 0x4116f9f1 in QEventLoop::processEvents(unsigned) ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#24 0x411d66d8 in QEventLoop::enterLoop() ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#25 0x411d6588 in QEventLoop::exec() () from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#26 0x411c3201 in QApplication::exec() ()
   from /usr/lib/qt-3.2/lib/libqt-mt.so.3
#27 0x0809f16f in QPtrList<K3bPluginFactory>::deleteItem(void*) ()
#28 0x418047e0 in __libc_start_main () from /lib/tls/libc.so.6
#29 0x0807cea1 in ?? ()
Comment 3 Martin Wehner 2004-01-26 11:11:28 UTC
Created attachment 4352 [details]
Testcase (K3b Project)
Comment 4 Martin Wehner 2004-01-26 11:16:46 UTC
Steps to reproduce the crash (well for me at least):

1. Unpack testcase to /tmp
2. Open test.k3b in k3b
3. Select all files in the project
4. Press delete or select remove from context menu

Crashes 100% here.
Comment 5 Jarkko Haapalainen 2004-01-26 12:02:10 UTC
I'm using K3b 0.10.3 with KDE 3.1-RC1 and I can't reproduce the crash. Would this be version 0.11 specific crash? 

(and i'm using gentoo packages)
Comment 6 Jarkko Haapalainen 2004-01-26 12:03:04 UTC
.. and i mean that i'm using kde 3.2-rc1 :)
Comment 7 Martin Wehner 2004-01-26 12:21:11 UTC
Yes, I think its 0.11 specific - It didn't happen before my upgrade.
The only other thing that changed on my system lately which might be relevant is libstdc++ (libstdc++-3.3.2-7 from FC1+ atm).
Comment 8 Martin Wehner 2004-02-04 01:36:29 UTC
I just upgraded to kde 3.2 (fc1 rpms) and K3b 11.1 and I still can crash it with the testcase.
Comment 9 Waldo Bastian 2004-02-21 00:28:53 UTC
==22262== Invalid read of size 4
==22262==    at 0x41E497C9: __dynamic_cast (in /usr/lib/libstdc++.so.5.0.5)
==22262==    by 0x408FD0ED: K3bDataFileView::slotRemoveItem() (k3bdatafileview.cpp:314)
==22262==    by 0x408FD4B7: K3bDataFileView::qt_invoke(int, QUObject*) (k3bdatafileview.moc:151)
==22262==    by 0x4161A94A: QObject::activate_signal(QConnectionList*, QUObject*) (qobject.cpp:2359)
==22262==    by 0x4161A7E9: QObject::activate_signal(int) (qobject.cpp:2328)
<snip>
==22262==    Address 0x46E8471C is 0 bytes inside a block of size 60 free'd
==22262==    at 0x4002A0B3: __builtin_delete (vg_replace_malloc.c:244)
==22262==    by 0x4002A0D1: operator delete(void*) (vg_replace_malloc.c:253)
==22262==    by 0x409144AF: K3bDataFileViewItem::~K3bDataFileViewItem() (k3bdataviewitem.h:82)
==22262==    by 0x41705FEB: QListView::clear() (qlistview.cpp:3211)
==22262==    by 0x40837A24: K3bListView::clear() (k3blistview.cpp:484)
==22262==    by 0x408FBABE: K3bDataFileView::updateContents() (k3bdatafileview.cpp:106)
==22262==    by 0x408FD529: K3bDataFileView::qt_invoke(int, QUObject*) (k3bdatafileview.moc:145)
==22262==    by 0x4161AA97: QObject::activate_signal(QConnectionList*, QUObject*) (qobject.cpp:2383)
==22262==    by 0x4161A7E9: QObject::activate_signal(int) (qobject.cpp:2328)
==22262==    by 0x408C9D24: K3bDoc::changed() (qmetaobject.h:261)
==22262==    by 0x4090CC59: K3bDataDoc::removeItem(K3bDataItem*) (k3bdatadoc.cpp:1036)
==22262==    by 0x408FD114: K3bDataFileView::slotRemoveItem() (k3bdatafileview.cpp:315)
Comment 10 Waldo Bastian 2004-02-21 00:46:10 UTC
Fixed in CVS HEAD.
Comment 11 Sebastian Trueg 2004-02-21 17:26:31 UTC
it is not fixed. You simply commited a terrible HACK which fixes only one special case. :(
Comment 12 Eitan Levi 2004-02-25 05:12:14 UTC
The same things happens to me, Here is data from a backtrace:

0x4196103b in waitpid () from /lib/libpthread.so.0
#0  0x4196103b in waitpid () from /lib/libpthread.so.0
#1  0x40f67c34 in ?? () from /usr/kde/3.2/lib/libkdecore.so.4
Comment 13 Wayne 2004-03-09 00:23:41 UTC
Hi, I haven't filed a bug report before so I hope this is right...
I am getting the same problem removing multiple files that have been selected already in the lower cd pane.  
Using Gentoo 1.4, kde 3.2, 2.6.3 kernel, k3b 0.11. 
heres the stack trace:
(no debugging symbols found)...Using host libthread_db library "/lib/libthread_db.so.1".
(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 7151)]

0x4179f5b8 in waitpid () from /lib/libpthread.so.0
#0  0x4179f5b8 in waitpid () from /lib/libpthread.so.0
#1  0x40f0fccc in ?? () from /usr/kde/3.2/lib/libkdecore.so.4
#2  0x40e4fff1 in KCrash::defaultCrashHandler(int) ()
   from /usr/kde/3.2/lib/libkdecore.so.4

Hope this is some help to you.
Regards
Wayne.
Comment 14 Sebastian Trueg 2004-05-15 10:19:33 UTC
what about k3b 0.11.9?
Comment 15 Martin Wehner 2004-05-20 15:25:28 UTC
I can't reproduce the crash with k3b 0.11.9 (using kde 3.2.2).
Comment 16 Nicolas L. 2005-08-19 13:31:37 UTC
i think this bug can be close as the reporter can't reproduce this bug
Comment 17 Sebastian Trueg 2006-04-27 22:54:06 UTC
Closing this bug because it can probably be fixed by one of the below:
1. installing a new version of K3b
2. installing a new version of the cdrtools
3. Using a lower writing speed
4. using a different writing mode
5. using a different media brand.

If none of the above help and closing this bug was a fault, please reopen.