Bug 291597

Summary: Ark crashes when being closed before loading bzipped tar archive fully.
Product: [Applications] ark Reporter: nn.dm55
Component: generalAssignee: Raphael Kubo da Costa <rakuco>
Status: RESOLVED DUPLICATE    
Severity: crash    
Priority: NOR    
Version: 2.16   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description nn.dm55 2012-01-15 18:05:24 UTC
Application: ark (2.16)
KDE Platform Version: 4.6.00 (4.6.0) "release 6"
Qt Version: 4.7.1
Operating System: Linux 2.6.37.6-0.9-desktop x86_64
Distribution: "openSUSE 11.4 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
I found this source file in an odd place in my sources for Atomic Tanks and checked the tarball I had of the sources to see if it had the file in the same place. When I was doing this, I noticed that KDE was saying that something "could lead to crashes." I then opened Ark multiple times and then closed it. When I happened to close Ark before it could finish loading the archive, it crashed.

The crash can be reproduced every time.

-- Backtrace:
Application: Ark (ark), signal: Segmentation fault
pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
162	62:	movl	(%rsp), %edi
[Current thread is 1 (Thread 0x7f6301568760 (LWP 28291))]

Thread 2 (Thread 0x7f62ed3aa700 (LWP 28295)):
[KCrash Handler]
#6  ref (this=0x783030, archiveEntry=...) at /usr/include/QtCore/qatomic_x86_64.h:121
#7  QList (this=0x783030, archiveEntry=...) at /usr/include/QtCore/qlist.h:118
#8  QForeachContainer (this=0x783030, archiveEntry=...) at /usr/include/QtCore/qglobal.h:2249
#9  Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x783030, archiveEntry=...) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/archiveinterface.cpp:82
#10 0x00007f62ed5f0706 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x783030, aentry=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/plugins/libarchive/libarchivehandler.cpp:644
#11 0x00007f62ed5f2eee in LibArchiveInterface::list (this=0x783030) at /usr/src/debug/kdeutils-4.6.0/ark/plugins/libarchive/libarchivehandler.cpp:115
#12 0x00007f63011870ff in Kerfuffle::ListJob::doWork (this=0x72d260) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.cpp:158
#13 0x00007f6301187ead in Kerfuffle::ListJob::qt_metacall (this=0x72d260, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7f62ed3a9840) at /usr/src/debug/kdeutils-4.6.0/build/ark/kerfuffle/jobs.moc:176
#14 0x00007f62fed490af in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () from /usr/lib64/libQtCore.so.4
#15 0x00007f62fed4a560 in QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) () from /usr/lib64/libQtCore.so.4
#16 0x00007f6301186f1c in invokeMethod (this=0x84b060) at /usr/include/QtCore/qobjectdefs.h:408
#17 Kerfuffle::Job::Private::run (this=0x84b060) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.cpp:54
#18 0x00007f62fec57a5e in ?? () from /usr/lib64/libQtCore.so.4
#19 0x00007f62fc332a3f in start_thread (arg=0x7f62ed3aa700) at pthread_create.c:297
#20 0x00007f62fe63c71d in clone () from /lib64/libc.so.6
#21 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f6301568760 (LWP 28291)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f62fec5814b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f62fec57200 in QThread::wait(unsigned long) () from /usr/lib64/libQtCore.so.4
#3  0x00007f6301186cc0 in Kerfuffle::Job::~Job (this=0x72d260, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.cpp:81
#4  0x00007f6301188962 in ~ListJob (this=0x72d260, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.h:85
#5  Kerfuffle::ListJob::~ListJob (this=0x72d260, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.h:85
#6  0x00007f62fed531b4 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4
#7  0x00007f62fed57e52 in QObject::~QObject() () from /usr/lib64/libQtCore.so.4
#8  0x00007f63011898c9 in Kerfuffle::ArchiveBase::~ArchiveBase (this=0x7afb90, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/archivebase.cpp:53
#9  0x00007f62f142a8ed in ArchiveModel::~ArchiveModel (this=0x841810, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/part/archivemodel.cpp:212
#10 0x00007f62f142a939 in ArchiveModel::~ArchiveModel (this=0x841810, __in_chrg=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/part/archivemodel.cpp:217
#11 0x00007f62fed531b4 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4
#12 0x00007f62fed57e52 in QObject::~QObject() () from /usr/lib64/libQtCore.so.4
#13 0x00007f6300c976f2 in KParts::Part::~Part (this=0x816500, __vtt_parm=0x7f62f163b778, __in_chrg=<value optimized out>) at /usr/src/debug/kdelibs-4.6.0/kparts/part.cpp:190
#14 0x00007f62f141b57b in Ark::Part::~Part (this=0x816500, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/part/part.cpp:130
#15 0x00007f62f141b5d9 in Ark::Part::~Part (this=0x816500, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/part/part.cpp:136
#16 0x000000000040ecbb in MainWindow::~MainWindow (this=0x70a150, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/app/mainwindow.cpp:72
#17 0x000000000040ed79 in MainWindow::~MainWindow (this=0x70a150, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kdeutils-4.6.0/ark/app/mainwindow.cpp:74
#18 0x00007f62fed54a78 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#19 0x00007f62ff72eedd in QWidget::event (this=0x70a150, event=0x81fab0) at kernel/qwidget.cpp:8659
#20 0x00007f62ffaed47b in QMainWindow::event (this=0x70a150, event=0x81fab0) at widgets/qmainwindow.cpp:1478
#21 0x00007f63003e6793 in KXmlGuiWindow::event (this=0x70a150, ev=0x81fab0) at /usr/src/debug/kdelibs-4.6.0/kdeui/xmlgui/kxmlguiwindow.cpp:126
#22 0x00007f62ff6ddd14 in QApplicationPrivate::notify_helper (this=0x63a210, receiver=0x70a150, e=0x81fab0) at kernel/qapplication.cpp:4445
#23 0x00007f62ff6e622a in QApplication::notify (this=<value optimized out>, receiver=0x70a150, e=0x81fab0) at kernel/qapplication.cpp:4324
#24 0x00007f630033d9e6 in KApplication::notify (this=0x7fff88b7b470, receiver=0x70a150, event=0x81fab0) at /usr/src/debug/kdelibs-4.6.0/kdeui/kernel/kapplication.cpp:311
#25 0x00007f62fed40bdc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#26 0x00007f62fed443d5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#27 0x00007f62fed6b763 in ?? () from /usr/lib64/libQtCore.so.4
#28 0x00007f62faf2fbd3 in g_main_dispatch (context=0x63cdb0) at gmain.c:2440
#29 g_main_context_dispatch (context=0x63cdb0) at gmain.c:3013
#30 0x00007f62faf303b0 in g_main_context_iterate (context=0x63cdb0, block=1, dispatch=1, self=<value optimized out>) at gmain.c:3091
#31 0x00007f62faf30650 in g_main_context_iteration (context=0x63cdb0, may_block=1) at gmain.c:3154
#32 0x00007f62fed6b8ff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#33 0x00007f62ff782d8e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#34 0x00007f62fed40032 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#35 0x00007f62fed40245 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#36 0x00007f62fed4468b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#37 0x000000000040e167 in main (argc=2, argv=0x7fff88b7c028) at /usr/src/debug/kdeutils-4.6.0/ark/app/main.cpp:209

This bug may be a duplicate of or related to bug 193908.

Possible duplicates by query: bug 278447.

Reported using DrKonqi
Comment 1 Raphael Kubo da Costa 2012-01-15 21:16:56 UTC

*** This bug has been marked as a duplicate of bug 193908 ***