Bug 193908

Summary: Ark crashes when closing it during large archive loading
Product: [Applications] ark Reporter: Unknown <null>
Component: generalAssignee: Raphael Kubo da Costa <rakuco>
Status: RESOLVED FIXED    
Severity: crash CC: 1292652198, aacid, adaptee, akuhnen, alessandro.ufms, alexandruch_91, alpha_one_x86, andrei.ilie, ano.r.ymous, arnaudfrezet, atalanttore, auxsvr, b.brachaczek, b.contacts_kde, biby, blackmetalowiec, brain, bugs.kde.org.vtj1a, bugzilla, bulscope, canavaroski90, captainstormy, cz3dtc, damien.carol, dap.darkness, darkartek, delahunt.timothy, diego.ml, dimitriusvc, dsamoyloff, eugen.neek, Fahad.alsaidi, frapell, gerhard.prochaska, greg.metcalfe, grimm, grzesiu.gostomski, haar.shelter, ikos, info, ingobongo, jacobmross, Jana.Domorowski, jcurlnews, jesus1989_p, jorti, jsilva.mx, kakalaki_akka, kde.kfoar, kde, kdebugs.phobie, kontakt, kuatam, liberovi, linuxhippy, maarten.bezemer, maninred, markus.walser, martinstingl, matthewcasperson, michal.sciubidlo, mikeaeron, minton.ford, miras199002, mr.erdk, mustafa1024m, nakieb, nbazelev, nn.dm55, null, oleg.kuh, philipp_muenzel, pswzyu, pureacetone, q.quark, rakuco, randomerror, razinov.a.u, razvan.petruescu, rcampos03, romain, sergey.nikulov, shubhadeepc, siliat, sputnikshock, tat_ooo, theokrat, thesimsone, tohyf, tosiara, uxio_prego, vikigoyal, w, wandereroffullmoon, xavier.besnard, yyyy12
Priority: HI    
Version: 2.19   
Target Milestone: ---   
Platform: Unlisted Binaries   
OS: All   
Latest Commit: Version Fixed In: 4.13.2
Sentry Crash Report:
Bug Depends on:    
Bug Blocks: 189419    
Attachments: New crash information added by DrKonqi
New crash information added by DrKonqi
proposed patch
proposed patch
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
proposed patch
New crash information added by DrKonqi
(1/4) move to signal slot communication.
(2/4) Move archive interface to thread
(3/4) Fast kill finishes working thread.
(4/4) Archive read_data_ship is really slow and blocks
New crash information added by DrKonqi
New crash information added by DrKonqi
Output of using Helgrind on Ark.
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
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi
Backtrace
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi

Description Unknown 2009-05-24 16:49:15 UTC
Application that crashed: ark
Version of the application: 2.13
KDE Version: 4.2.87 (KDE 4.2.87 (KDE 4.3 >= 20090519))
Qt Version: 4.5.1
Operating System: Linux 2.6.30-rc6 i686

What I was doing when the application crashed:
Similar to the duplicate bug. Open *huge* .tar.bz2 archive and close ark before it is loaded (I did it with a full system backup, about 1.1 gigabytes). Got kde-4.2.87 on Gentoo with debug enabled.

Hope the magic bug-report-thing will work. (:

 -- Backtrace:
Application: Ark (ark), signal: Segmentation fault
[Current thread is 0 (LWP 6174)]

Thread 2 (Thread 0xb4955b90 (LWP 6181)):
[KCrash Handler]
#6  Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x9297188, archiveEntry=@0xb49551f8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/archiveinterface.cpp:83
#7  0xb4af4635 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x9297188, aentry=0x927c090)
    at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/plugins/libarchive/libarchivehandler.cpp:82
#8  0xb4af5b49 in LibArchiveInterface::list (this=0x9297188) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/plugins/libarchive/libarchivehandler.cpp:116
#9  0xb7f3717d in Kerfuffle::ListJob::doWork (this=0x92916b8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/jobs.cpp:144
#10 0xb7f39d31 in Kerfuffle::ThreadExecution::run (this=0x9293140) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/threading.cpp:41
#11 0xb6a58a90 in QThreadPrivate::start (arg=0x9293140) at thread/qthread_unix.cpp:189
#12 0xb69e516f in start_thread (arg=0xb4955b90) at pthread_create.c:297
#13 0xb6849dce in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb60c0700 (LWP 6174)):
#0  0xb7f50424 in __kernel_vsyscall ()
#1  0xb69e8bf5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb6a5966e in QWaitCondition::wait (this=0x92926c0, mutex=0x92926ac, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#3  0xb6a58d24 in QThread::wait (this=0x9293140, time=4294967295) at thread/qthread_unix.cpp:485
#4  0xb7f37d2a in ~Job (this=0x92916b8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/jobs.cpp:59
#5  0xb7f39879 in ~ListJob (this=0x92916b8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/jobs.h:82
#6  0xb6b599d2 in QObjectPrivate::deleteChildren (this=0x92a13c8) at kernel/qobject.cpp:1845
#7  0xb6b612bb in ~QObject (this=0x92a01e8) at kernel/qobject.cpp:844
#8  0xb7f3a98b in ~ArchiveBase (this=0x92a01e8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/kerfuffle/archivebase.cpp:55
#9  0xb4c9a630 in ~ArchiveModel (this=0x9226a10) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/part/archivemodel.cpp:204
#10 0xb6b599d2 in QObjectPrivate::deleteChildren (this=0x922e0f0) at kernel/qobject.cpp:1845
#11 0xb6b612bb in ~QObject (this=0x921c628) at kernel/qobject.cpp:844
#12 0xb7e6946b in ~Part (this=0x921c628, __vtt_parm=0xb4ca63cc) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kparts/part.cpp:212
#13 0xb7e696fa in ~ReadOnlyPart (this=0x921c628, __vtt_parm=0xb4ca63c8) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kparts/part.cpp:459
#14 0xb7e6985f in ~ReadWritePart (this=0x921c628, __vtt_parm=0xb4ca63c4) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kparts/part.cpp:721
#15 0xb4c8d6cc in ~Part (this=0x921c628) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/part/part.cpp:112
#16 0x08051e03 in ~MainWindow (this=0x9207fd8) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/app/mainwindow.cpp:74
#17 0xb6b57fd5 in qDeleteInEventHandler (o=0x1) at kernel/qobject.cpp:3813
#18 0xb6b5a09b in QObject::event (this=0x9207fd8, e=0x96bfa60) at kernel/qobject.cpp:1092
#19 0xb6d82e76 in QWidget::event (this=0x9207fd8, event=0x96bfa60) at kernel/qwidget.cpp:7918
#20 0xb7162357 in QMainWindow::event (this=0x9207fd8, event=0x96bfa60) at widgets/qmainwindow.cpp:1402
#21 0xb7b0fc8f in KMainWindow::event (this=0x9207fd8, ev=0x96bfa60) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kdeui/widgets/kmainwindow.cpp:1094
#22 0xb7b4f74c in KXmlGuiWindow::event (this=0x9207fd8, ev=0x96bfa60) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kdeui/xmlgui/kxmlguiwindow.cpp:131
#23 0xb6d2949c in QApplicationPrivate::notify_helper (this=0x918e530, receiver=0x9207fd8, e=0x96bfa60) at kernel/qapplication.cpp:4057
#24 0xb6d32142 in QApplication::notify (this=0xbff49c5c, receiver=0x9207fd8, e=0x96bfa60) at kernel/qapplication.cpp:4022
#25 0xb7a370d3 in KApplication::notify (this=0xbff49c5c, receiver=0x9207fd8, event=0x96bfa60) at /var/tmp/portage/kde-base/kdelibs-4.2.87/work/kdelibs-4.2.87/kdeui/kernel/kapplication.cpp:302
#26 0xb6b490ab in QCoreApplication::notifyInternal (this=0xbff49c5c, receiver=0x9207fd8, event=0x96bfa60) at kernel/qcoreapplication.cpp:606
#27 0xb6b4ca55 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x917d320) at kernel/qcoreapplication.h:213
#28 0xb6b4cc5d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1140
#29 0xb6b73d0f in postEventSourceDispatch (s=0x91906e0) at kernel/qcoreapplication.h:218
#30 0xb62f3271 in IA__g_main_context_dispatch (context=0x9190658) at gmain.c:2144
#31 0xb62f6903 in g_main_context_iterate (context=0x9190658, block=1, dispatch=1, self=0x918e6c8) at gmain.c:2778
#32 0xb62f6ac1 in IA__g_main_context_iteration (context=0x9190658, may_block=1) at gmain.c:2841
#33 0xb6b739f8 in QEventDispatcherGlib::processEvents (this=0x918e510, flags={i = -1074488600}) at kernel/qeventdispatcher_glib.cpp:324
#34 0xb6dc1955 in QGuiEventDispatcherGlib::processEvents (this=0x918e510, flags={i = -1074488552}) at kernel/qguieventdispatcher_glib.cpp:202
#35 0xb6b47aea in QEventLoop::processEvents (this=0xbff49b80, flags={i = -1074488488}) at kernel/qeventloop.cpp:149
#36 0xb6b47caa in QEventLoop::exec (this=0xbff49b80, flags={i = -1074488440}) at kernel/qeventloop.cpp:196
#37 0xb6b4cd21 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#38 0xb6d291c7 in QApplication::exec () at kernel/qapplication.cpp:3526
#39 0x0804fddf in main (argc=4, argv=0xbff49ff4) at /var/tmp/portage/kde-base/ark-4.2.87/work/ark-4.2.87/ark/app/main.cpp:225

This bug may be a duplicate of or related to bug 166751
Comment 1 Raphael Kubo da Costa 2009-05-24 17:34:37 UTC
*** Bug 166751 has been marked as a duplicate of this bug. ***
Comment 2 Raphael Kubo da Costa 2009-05-24 17:36:31 UTC
Indeed, this is a duplicate of bug 166751, but I'm leaving this one open and marking the other one as a duplicate because this report provides a better and mroe up-to-date backtrace. Thanks.
Comment 3 Raphael Kubo da Costa 2009-08-21 09:04:47 UTC
*** Bug 204621 has been marked as a duplicate of this bug. ***
Comment 4 Raphael Kubo da Costa 2009-08-30 00:37:43 UTC
*** Bug 205436 has been marked as a duplicate of this bug. ***
Comment 5 Raphael Kubo da Costa 2009-09-23 15:08:07 UTC
*** Bug 208262 has been marked as a duplicate of this bug. ***
Comment 6 Raphael Kubo da Costa 2009-10-13 21:26:38 UTC
*** Bug 210472 has been marked as a duplicate of this bug. ***
Comment 7 Raphael Kubo da Costa 2009-10-16 15:28:41 UTC
*** Bug 210766 has been marked as a duplicate of this bug. ***
Comment 8 Raphael Kubo da Costa 2009-11-02 16:13:52 UTC
*** Bug 212721 has been marked as a duplicate of this bug. ***
Comment 9 Raphael Kubo da Costa 2009-11-08 18:22:58 UTC
*** Bug 189419 has been marked as a duplicate of this bug. ***
Comment 10 Raphael Kubo da Costa 2009-11-08 18:26:52 UTC
*** Bug 208104 has been marked as a duplicate of this bug. ***
Comment 11 Raphael Kubo da Costa 2009-11-27 22:38:37 UTC
*** Bug 216415 has been marked as a duplicate of this bug. ***
Comment 12 Raphael Kubo da Costa 2009-12-06 03:55:43 UTC
*** Bug 217528 has been marked as a duplicate of this bug. ***
Comment 13 Raphael Kubo da Costa 2009-12-08 22:41:55 UTC
*** Bug 217893 has been marked as a duplicate of this bug. ***
Comment 14 Unknown 2009-12-11 12:21:27 UTC
Created attachment 38984 [details]
New crash information added by DrKonqi
Comment 15 Raphael Kubo da Costa 2009-12-12 01:24:54 UTC
*** Bug 215974 has been marked as a duplicate of this bug. ***
Comment 16 Raphael Kubo da Costa 2009-12-13 23:29:43 UTC
*** Bug 218558 has been marked as a duplicate of this bug. ***
Comment 17 Dario Andres 2009-12-27 22:31:04 UTC
*** Bug 220165 has been marked as a duplicate of this bug. ***
Comment 18 Grzegorz Gostomski 2010-03-01 22:37:17 UTC
Created attachment 41246 [details]
New crash information added by DrKonqi

I opened big archive file tar.gz (324.5 MB) and i close ark windows before see files in ark list file.
Comment 19 Raphael Kubo da Costa 2010-03-06 23:02:40 UTC
*** Bug 229734 has been marked as a duplicate of this bug. ***
Comment 20 Raphael Kubo da Costa 2010-03-07 21:25:34 UTC
*** Bug 229847 has been marked as a duplicate of this bug. ***
Comment 21 Michal Sciubidlo 2010-03-09 21:57:06 UTC
Created attachment 41491 [details]
proposed patch

Tries to close threads on exit. Tested with libarchive and clizipplugin. It could help with similar bugs like 222392 but i didn't test it.
Comment 22 Raphael Kubo da Costa 2010-03-10 20:28:00 UTC
Thanks for the patch.

I was thinking of trying to avoid using QThread::terminate() since it will call pthread_cancel() and just stop everything at the next cancellation point (in case the archive is being modified it could lead to data loss?).

If there's no other option, this may be the only way to cancel things, but I'd like to look for other solutions before (I haven't had much time for that lately).
Comment 23 Michal Sciubidlo 2010-03-10 23:54:21 UTC
> in case the archive is being modified it could lead to data loss?
That is good point but i'm not sure that there will be any data loss.

When using command line program it's terminated and killed if it won't close in 3(?) seconds. I don't know how programs react to terminate signal but we can't do any better.

Libarchive modifies files in addFiles() and deleteFiles(). Both functions create new modified archive and later replace orginal file.
Comment 24 Raphael Kubo da Costa 2010-04-05 04:16:23 UTC
*** Bug 233284 has been marked as a duplicate of this bug. ***
Comment 25 Raphael Kubo da Costa 2010-04-20 18:25:34 UTC
*** Bug 234902 has been marked as a duplicate of this bug. ***
Comment 26 Raphael Kubo da Costa 2010-04-22 15:43:25 UTC
*** Bug 235054 has been marked as a duplicate of this bug. ***
Comment 27 Michal Sciubidlo 2010-04-29 00:39:43 UTC
Created attachment 43087 [details]
proposed patch

It's same as before but now Ark won't exit when orginal file is deleted and new archive isn't renamed (to orginal file name).
Comment 28 Raphael Kubo da Costa 2010-05-11 05:09:58 UTC
I've finally had time to review your patch.

archiveinterface.h is missing a <QMutex> #include.

When I closed Ark while it was loading a 1.1G file, Ark crashed and I got the following warning from Qt:

Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.
Comment 29 Raphael Kubo da Costa 2010-05-19 19:55:36 UTC
*** Bug 238210 has been marked as a duplicate of this bug. ***
Comment 30 Raphael Kubo da Costa 2010-05-21 18:51:35 UTC
*** Bug 238356 has been marked as a duplicate of this bug. ***
Comment 31 Diego 2010-06-15 18:22:56 UTC
Created attachment 48037 [details]
New crash information added by DrKonqi

I was trying to open Fedora 13 x86_64 DVD iso.
Comment 32 Raphael Kubo da Costa 2010-06-19 19:24:35 UTC
*** Bug 242187 has been marked as a duplicate of this bug. ***
Comment 33 Raphael Kubo da Costa 2010-07-21 01:37:06 UTC
*** Bug 245031 has been marked as a duplicate of this bug. ***
Comment 34 Raphael Kubo da Costa 2010-07-21 01:37:47 UTC
*** Bug 244968 has been marked as a duplicate of this bug. ***
Comment 35 Diego 2010-07-31 09:32:29 UTC
Created attachment 49705 [details]
New crash information added by DrKonqi

Updated backtrace. I was trying to open a big archive and closed Ark with it was still populating the list.
Comment 36 gerhard prochaska 2010-08-25 17:44:00 UTC
Created attachment 50950 [details]
New crash information added by DrKonqi

when Opening a tar.gz by clicking on the Desktop ARK starts to prepare the Directory structure for Display. 
The crash occures when i close the ARK window  by clicking on the top right corner X Button  before the file is fully analyzed by ARK.
This is before ARK can  display the directory tree.

 The crash does not occure if ARK can finish the analysis of the directory structure and the directorytree is displayed in the ARK window.
Comment 37 Raphael Kubo da Costa 2010-08-30 18:44:13 UTC
*** Bug 249255 has been marked as a duplicate of this bug. ***
Comment 38 Raphael Kubo da Costa 2010-09-12 20:37:36 UTC
*** Bug 250835 has been marked as a duplicate of this bug. ***
Comment 39 Raphael Kubo da Costa 2010-09-13 21:42:35 UTC
*** Bug 251147 has been marked as a duplicate of this bug. ***
Comment 40 Raphael Kubo da Costa 2010-09-14 05:57:08 UTC
*** Bug 251177 has been marked as a duplicate of this bug. ***
Comment 41 محمد النقيب 2010-09-14 06:19:45 UTC
*** Bug 251152 has been marked as a duplicate of this bug. ***
Comment 42 محمد النقيب 2010-09-14 10:01:49 UTC
*** Bug 251179 has been marked as a duplicate of this bug. ***
Comment 43 Raphael Kubo da Costa 2010-10-23 19:32:04 UTC
*** Bug 253129 has been marked as a duplicate of this bug. ***
Comment 44 Raphael Kubo da Costa 2010-11-25 18:07:06 UTC
*** Bug 256115 has been marked as a duplicate of this bug. ***
Comment 45 Raphael Kubo da Costa 2010-12-08 02:18:53 UTC
Changing the default assignee in the currently open Ark bug reports to me.
Comment 46 tohyf 2010-12-13 05:06:03 UTC
Created attachment 54481 [details]
New crash information added by DrKonqi

same problem here. After canceled loading a large archive, it crashed.
Comment 47 Raphael Kubo da Costa 2010-12-23 18:13:23 UTC
*** Bug 261082 has been marked as a duplicate of this bug. ***
Comment 48 Clemens Eisserer 2010-12-23 18:14:30 UTC
so about 20 duplicate reports.
any chance to see this fixed in 4.6?
Comment 49 Raphael Kubo da Costa 2010-12-23 18:20:07 UTC
It's hard to honestly promise anything: I've been the only person committing to Ark for maybe a year, and only do that in my free time (which is also divided between other parts of KDE and FreeBSD).

This bug has been in my TODO list for a long time, but properly fixing it requires quite a few changes to the core, as threading is quite hard to get right.

So unless more people show up to help me take care of it, it's hard to set a date for anything :/
Comment 50 Raphael Kubo da Costa 2011-01-05 13:32:53 UTC
*** Bug 262124 has been marked as a duplicate of this bug. ***
Comment 51 Elias Probst 2011-01-12 00:02:36 UTC
Created attachment 55889 [details]
New crash information added by DrKonqi

ark (2.16) on KDE Platform 4.5.95 (4.6 RC2) using Qt 4.7.1

Maybe it's useful for further debugging etc.
A backtrace of this crash on:
KDE 4.6 RC2 (4.5.95)
Qt 4.7.1

-- Backtrace (Reduced):
#6  0x00007fec509bb13d in Kerfuffle::ReadOnlyArchiveInterface::entry (this=0xb2c930, archiveEntry=...) at /var/tmp/portage/kde-base/ark-4.5.95/work/ark-4.5.95/ark/kerfuffle/archiveinterface.cpp:82
#7  0x00007fec3cea7a41 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0xb2c930, aentry=<value optimized out>) at /var/tmp/portage/kde-base/ark-4.5.95/work/ark-4.5.95/ark/plugins/libarchive/libarchivehandler.cpp:644
#8  0x00007fec3cea9d55 in LibArchiveInterface::list (this=0xb2c930) at /var/tmp/portage/kde-base/ark-4.5.95/work/ark-4.5.95/ark/plugins/libarchive/libarchivehandler.cpp:115
#9  0x00007fec509bc6a1 in Kerfuffle::ListJob::doWork (this=0xb32890) at /var/tmp/portage/kde-base/ark-4.5.95/work/ark-4.5.95/ark/kerfuffle/jobs.cpp:158
#10 0x00007fec509bc4f3 in Kerfuffle::ListJob::qt_metacall (this=0xb32890, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fec3c8d37f0) at /var/tmp/portage/kde-base/ark-4.5.95/work/ark-4.5.95_build/ark/kerfuffle/jobs.moc:176
Comment 52 Raphael Kubo da Costa 2011-03-10 18:56:33 UTC
*** Bug 268003 has been marked as a duplicate of this bug. ***
Comment 53 Raphael Kubo da Costa 2011-03-14 16:02:02 UTC
*** Bug 268438 has been marked as a duplicate of this bug. ***
Comment 54 Raphael Kubo da Costa 2011-03-23 02:31:08 UTC
*** Bug 269186 has been marked as a duplicate of this bug. ***
Comment 55 Raphael Kubo da Costa 2011-03-23 15:16:14 UTC
*** Bug 269204 has been marked as a duplicate of this bug. ***
Comment 56 Raphael Kubo da Costa 2011-05-01 05:37:56 UTC
*** Bug 272016 has been marked as a duplicate of this bug. ***
Comment 57 Raphael Kubo da Costa 2011-05-07 20:37:21 UTC
*** Bug 272700 has been marked as a duplicate of this bug. ***
Comment 58 Raphael Kubo da Costa 2011-05-15 04:15:24 UTC
*** Bug 273285 has been marked as a duplicate of this bug. ***
Comment 59 Raphael Kubo da Costa 2011-06-04 11:00:14 UTC
*** Bug 274876 has been marked as a duplicate of this bug. ***
Comment 60 Raphael Kubo da Costa 2011-07-25 16:29:16 UTC
*** Bug 278447 has been marked as a duplicate of this bug. ***
Comment 61 tosiara 2011-07-26 17:10:20 UTC
Created attachment 62216 [details]
New crash information added by DrKonqi

ark (2.16) on KDE Platform 4.6.00 (4.6.0) "release 6" using Qt 4.7.1

- What I was doing when the application crashed:

open tar archive, while Ark window is loading try to close it. Ark crashes

-- Backtrace (Reduced):
#7  Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x81e26e8, archiveEntry=...) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/archiveinterface.cpp:83
#8  0xb1738877 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x81e26e8, aentry=0x81f8860) at /usr/src/debug/kdeutils-4.6.0/ark/plugins/libarchive/libarchivehandler.cpp:644
#9  0xb173b4ee in LibArchiveInterface::list (this=0x81e26e8) at /usr/src/debug/kdeutils-4.6.0/ark/plugins/libarchive/libarchivehandler.cpp:115
#10 0xb77bcb9f in Kerfuffle::ListJob::doWork (this=0x81e49f8) at /usr/src/debug/kdeutils-4.6.0/ark/kerfuffle/jobs.cpp:158
#11 0xb77bdc9e in Kerfuffle::ListJob::qt_metacall (this=0x81e49f8, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xb1422ecc) at /usr/src/debug/kdeutils-4.6.0/build/ark/kerfuffle/jobs.moc:176
Comment 62 Raphael Kubo da Costa 2011-08-11 12:51:17 UTC
*** Bug 279735 has been marked as a duplicate of this bug. ***
Comment 63 Raphael Kubo da Costa 2011-08-11 12:51:40 UTC
*** Bug 279736 has been marked as a duplicate of this bug. ***
Comment 64 Raphael Kubo da Costa 2011-08-13 21:55:41 UTC
*** Bug 280042 has been marked as a duplicate of this bug. ***
Comment 65 Michal Sciubidlo 2011-09-05 22:44:39 UTC
Created attachment 63424 [details]
proposed patch

I checked cliinterface. Do i have to delete all kerfuffle_cli***.so to test LibArchiveInterface, KArchiveInterface and LibSingleFileInterface?
Comment 66 Lukas Redynk 2011-09-07 08:08:12 UTC
Created attachment 63459 [details]
New crash information added by DrKonqi

ark (2.16) on KDE Platform 4.6.5 (4.6.5) using Qt 4.7.3

- What I was doing when the application crashed:
I've tried open tar.bz2 archive (~250MB): Ark worked for a while and then crashed

-- Backtrace (Reduced):
#6  0x00000032a34181d7 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, archiveEntry=...) at /usr/src/debug/kdeutils-4.6.5/ark/kerfuffle/archiveinterface.cpp:82
#7  0x00007fe00578e3e8 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0xf70740, aentry=<optimized out>) at /usr/src/debug/kdeutils-4.6.5/ark/plugins/libarchive/libarchivehandler.cpp:649
#8  0x00007fe00578f65e in LibArchiveInterface::list (this=0xf70740) at /usr/src/debug/kdeutils-4.6.5/ark/plugins/libarchive/libarchivehandler.cpp:115
#9  0x00000032a3418ebb in Kerfuffle::ListJob::doWork (this=0xd65f10) at /usr/src/debug/kdeutils-4.6.5/ark/kerfuffle/jobs.cpp:158
#10 0x00000032a3419cad in Kerfuffle::ListJob::qt_metacall (this=0xd65f10, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fe0055407d0) at /usr/src/debug/kdeutils-4.6.5/x86_64-redhat-linux-gnu/ark/kerfuffle/jobs.moc:176
Comment 67 Raphael Kubo da Costa 2011-09-22 03:32:59 UTC
(In reply to comment #65)
> Created an attachment (id=63424) [details]
> proposed patch
> 
> I checked cliinterface. Do i have to delete all kerfuffle_cli***.so to test
> LibArchiveInterface, KArchiveInterface and LibSingleFileInterface?

Could you please submit this patch via ReviewBoard (https://git.reviewboard.kde.org)?
Comment 68 Raphael Kubo da Costa 2011-09-28 13:25:07 UTC
*** Bug 282522 has been marked as a duplicate of this bug. ***
Comment 69 Michal Sciubidlo 2011-10-13 21:07:08 UTC
How can I create review request? I don't have account and i don't see way to create new one. Btw i have newer version of this patch that works which LibArchiveInterface too.
Comment 70 Raphael Kubo da Costa 2011-10-13 21:23:50 UTC
(In reply to comment #69)
> How can I create review request? I don't have account and i don't see way to
> create new one. Btw i have newer version of this patch that works which
> LibArchiveInterface too.

You already have an identity.kde.org account, so you do have a ReviewBoard account as well.

See http://techbase.kde.org/Reviewboard for details.
Comment 71 Michal Sciubidlo 2011-10-18 18:36:15 UTC
Posted it http://git.reviewboard.kde.org/r/102903/
Comment 72 Raphael Kubo da Costa 2011-11-09 11:49:32 UTC
*** Bug 286132 has been marked as a duplicate of this bug. ***
Comment 73 Jekyll Wu 2011-11-10 15:03:55 UTC
*** Bug 283998 has been marked as a duplicate of this bug. ***
Comment 74 Michal Sciubidlo 2011-11-16 21:18:23 UTC
Created attachment 65758 [details]
(1/4) move to signal slot communication.

I can't post them on review board because it says that "The file 'kerfuffle/archiveinterface.cpp' (r133ffa2) could not be found in the repository" so i post them here
Comment 75 Michal Sciubidlo 2011-11-16 21:18:59 UTC
Created attachment 65759 [details]
(2/4) Move archive interface to thread
Comment 76 Michal Sciubidlo 2011-11-16 21:20:05 UTC
Created attachment 65760 [details]
(3/4) Fast kill finishes working thread.
Comment 77 Michal Sciubidlo 2011-11-16 21:21:09 UTC
Created attachment 65761 [details]
(4/4) Archive read_data_ship is really slow and blocks
Comment 78 Raphael Kubo da Costa 2011-11-16 23:04:08 UTC
Thanks for splitting the patches up. I just don't really understand why you have attached them here and only sent part 1 to reviewboard, which is what we use for this sort of code review. Can you make sure the other parts are sent there too?
Comment 79 Raphael Kubo da Costa 2011-11-24 12:22:39 UTC
*** Bug 287423 has been marked as a duplicate of this bug. ***
Comment 80 Raphael Kubo da Costa 2012-01-05 13:41:33 UTC
*** Bug 290692 has been marked as a duplicate of this bug. ***
Comment 81 Raphael Kubo da Costa 2012-01-15 21:16:56 UTC
*** Bug 291597 has been marked as a duplicate of this bug. ***
Comment 82 Raphael Kubo da Costa 2012-01-29 22:31:37 UTC
*** Bug 292714 has been marked as a duplicate of this bug. ***
Comment 83 Jesse 2012-02-02 08:54:17 UTC
Created attachment 68428 [details]
New crash information added by DrKonqi

ark (2.18) on KDE Platform 4.8.00 (4.8.0 using Qt 4.8.0

- What I was doing when the application crashed:

Opened the chromium source archive. Closed before it fully loaded.

-- Backtrace (Reduced):
#6  0x00007f8a7e12a797 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, archiveEntry=...) at /var/tmp/portage/kde-base/ark-4.8.0/work/ark-4.8.0/kerfuffle/archiveinterface.cpp:82
#7  0x00007f8a782f84b3 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0xda8170, aentry=<optimized out>) at /var/tmp/portage/kde-base/ark-4.8.0/work/ark-4.8.0/plugins/libarchive/libarchivehandler.cpp:649
#8  0x00007f8a782f8e2e in LibArchiveInterface::list (this=0xda8170) at /var/tmp/portage/kde-base/ark-4.8.0/work/ark-4.8.0/plugins/libarchive/libarchivehandler.cpp:115
#9  0x00007f8a7e12b4eb in Kerfuffle::ListJob::doWork (this=0xda5ae0) at /var/tmp/portage/kde-base/ark-4.8.0/work/ark-4.8.0/kerfuffle/jobs.cpp:178
#10 0x00007f8a7e12bbd1 in Kerfuffle::Job::Private::run (this=0xdd7bd0) at /var/tmp/portage/kde-base/ark-4.8.0/work/ark-4.8.0/kerfuffle/jobs.cpp:60
Comment 84 Jesse 2012-02-11 08:31:06 UTC
So didn't the patches work?
Comment 85 Raphael Kubo da Costa 2012-02-11 18:09:26 UTC
(In reply to comment #84)
> So didn't the patches work?

I haven't had time to look at all the patches Michal sent to ReviewBoard yet.
Comment 86 nn.dm55 2012-02-12 20:28:08 UTC
(In reply to comment #84)
> So didn't the patches work?

I tried to apply the patches, but patch #2 couldn't find the file kerfuffle/archivebase.cpp, which was removed in commit af60a9e0ef57f6477c13523d893bb6815b9f5d44
Comment 87 Raphael Kubo da Costa 2012-02-24 18:48:44 UTC
*** Bug 294761 has been marked as a duplicate of this bug. ***
Comment 88 razinov.a.u 2012-03-07 12:57:20 UTC
Crashes always for me.

Application: Ark (ark), signal: Segmentation fault
[Current thread is 1 (Thread 0xb7806a50 (LWP 12128))]

Thread 2 (Thread 0xb6657b70 (LWP 12129)):
[KCrash Handler]
#7  Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x96d6de0, archiveEntry=...) at ../../../ark/kerfuffle/archiveinterface.cpp:83
#8  0x03c9dd29 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x96d6de0, aentry=0x96dd258) at ../../../../ark/plugins/libarchive/libarchivehandler.cpp:649
#9  0x03c9e75a in LibArchiveInterface::list (this=0x96d6de0) at ../../../../ark/plugins/libarchive/libarchivehandler.cpp:115
#10 0x00126fef in Kerfuffle::ListJob::doWork (this=0x96cf808) at ../../../ark/kerfuffle/jobs.cpp:158
#11 0x001281ce in Kerfuffle::ListJob::qt_metacall (this=0x96cf808, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xb6656f0c) at ./jobs.moc:176
#12 0x023dbb7d in metacall (argv=0xb6656f0c, idx=31, cl=QMetaObject::InvokeMetaMethod, object=0x96cf808) at kernel/qmetaobject.cpp:237
#13 QMetaObject::metacall (object=0x96cf808, cl=QMetaObject::InvokeMetaMethod, idx=31, argv=0xb6656f0c) at kernel/qmetaobject.cpp:232
#14 0x023dd670 in QMetaMethod::invoke (this=0xb665706c, object=0x96cf808, connectionType=Qt::DirectConnection, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1597
#15 0x023dfb57 in QMetaObject::invokeMethod (obj=0x96cf808, member=0x139ed3 "doWork", type=Qt::DirectConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1151
#16 0x00126a6f in invokeMethod (val9=<optimized out>, val8=<optimized out>, val7=<optimized out>, val6=<optimized out>, val5=<optimized out>, val4=<optimized out>, val3=<optimized out>, val2=<optimized out>, val1=<optimized out>, val0=<optimized out>, type=Qt::DirectConnection, member=0x139ed3 "doWork", obj=<optimized out>) at /usr/include/qt4/QtCore/qobjectdefs.h:410
#17 Kerfuffle::Job::Private::run (this=0x96aa2a0) at ../../../ark/kerfuffle/jobs.cpp:54
#18 0x022da7b3 in QThreadPrivate::start (arg=0x96aa2a0) at thread/qthread_unix.cpp:331
#19 0x018c9d31 in start_thread (arg=0xb6657b70) at pthread_create.c:304
#20 0x00bd30ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb7806a50 (LWP 12128)):
#0  0x007c1416 in __kernel_vsyscall ()
#1  0x018cda5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00be0cfc in __pthread_cond_wait (cond=0x96d70c8, mutex=0x96d70b0) at forward.c:139
#3  0x022dacc0 in wait (time=4294967295, this=0x96d70b0) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x96ce7b0, mutex=0x96ce798, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x022da475 in QThread::wait (this=0x96aa2a0, time=4294967295) at thread/qthread_unix.cpp:745
#6  0x00126903 in Kerfuffle::Job::~Job (this=0x96cf808, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/jobs.cpp:81
#7  0x0012940d in ~ListJob (this=0x96cf808, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/jobs.h:84
#8  Kerfuffle::ListJob::~ListJob (this=0x96cf808, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/jobs.h:84
#9  0x023e9841 in QObjectPrivate::deleteChildren (this=0x944c0a0) at kernel/qobject.cpp:1955
#10 0x023ee439 in QObject::~QObject (this=0x944c070, __in_chrg=<optimized out>) at kernel/qobject.cpp:946
#11 0x0012a070 in ~Archive (this=0x944c070, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/archive.h:90
#12 Kerfuffle::ArchiveBase::~ArchiveBase (this=0x944c070, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/archivebase.cpp:51
#13 0x0012a0a2 in Kerfuffle::ArchiveBase::~ArchiveBase (this=0x944c070, __in_chrg=<optimized out>) at ../../../ark/kerfuffle/archivebase.cpp:53
#14 0x0680f5bb in ArchiveModel::~ArchiveModel (this=0x94b5078, __in_chrg=<optimized out>) at ../../../ark/part/archivemodel.cpp:272
#15 0x0680f622 in ArchiveModel::~ArchiveModel (this=0x94b5078, __in_chrg=<optimized out>) at ../../../ark/part/archivemodel.cpp:277
#16 0x023e9841 in QObjectPrivate::deleteChildren (this=0x94b5020) at kernel/qobject.cpp:1955
#17 0x023ee439 in QObject::~QObject (this=0x94ae698, __in_chrg=<optimized out>) at kernel/qobject.cpp:946
#18 0x0015ba74 in KParts::Part::~Part (this=0x94ae698, __vtt_parm=0x68244cc, __in_chrg=<optimized out>) at ../../kparts/part.cpp:190
#19 0x0015cddc in KParts::ReadOnlyPart::~ReadOnlyPart (this=0x94ae698, __vtt_parm=0x68244c8, __in_chrg=<optimized out>) at ../../kparts/part.cpp:460
#20 0x0015cf20 in KParts::ReadWritePart::~ReadWritePart (this=0x94ae698, __vtt_parm=0x68244c4, __in_chrg=<optimized out>) at ../../kparts/part.cpp:773
#21 0x0680020d in Ark::Part::~Part (this=0x94ae698, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../../ark/part/part.cpp:131
#22 0x06800282 in Ark::Part::~Part (this=0x94ae698, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../../ark/part/part.cpp:139
#23 0x08054079 in MainWindow::~MainWindow (this=0x94611f8, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../../ark/app/mainwindow.cpp:72
#24 0x08054130 in MainWindow::~MainWindow (this=0x94611f8, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../../ark/app/mainwindow.cpp:74
#25 0x023e85f3 in qDeleteInEventHandler (o=0x94611f8) at kernel/qobject.cpp:3986
#26 0x023edb80 in QObject::event (this=0x94611f8, e=0xb5dd8090) at kernel/qobject.cpp:1200
#27 0x00faec92 in QWidget::event (this=0x94611f8, event=0xb5dd8090) at kernel/qwidget.cpp:8754
#28 0x013d151c in QMainWindow::event (this=0x94611f8, event=0xb5dd8090) at widgets/qmainwindow.cpp:1478
#29 0x004515a4 in KMainWindow::event (this=0x94611f8, ev=0xb5dd8090) at ../../kdeui/widgets/kmainwindow.cpp:1084
#30 0x00499a02 in KXmlGuiWindow::event (this=0x94611f8, ev=0xb5dd8090) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:126
#31 0x00f54d84 in notify_helper (e=0xb5dd8090, receiver=0x94611f8, this=0x933e220) at kernel/qapplication.cpp:4486
#32 QApplicationPrivate::notify_helper (this=0x933e220, receiver=0x94611f8, e=0xb5dd8090) at kernel/qapplication.cpp:4458
#33 0x00f5a1d8 in QApplication::notify (this=0x933e220, receiver=0x94611f8, e=0xb5dd8090) at kernel/qapplication.cpp:4451
#34 0x00375971 in KApplication::notify (this=0xbfbc0f0c, receiver=0x94611f8, event=0xb5dd8090) at ../../kdeui/kernel/kapplication.cpp:311
#35 0x023d519e in QCoreApplication::notifyInternal (this=0xbfbc0f0c, receiver=0x94611f8, event=0xb5dd8090) at kernel/qcoreapplication.cpp:787
#36 0x023d8f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#37 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9321520) at kernel/qcoreapplication.cpp:1428
#38 0x023d90ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#39 0x024036a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#40 postEventSourceDispatch (s=0x9341d00) at kernel/qeventdispatcher_glib.cpp:277
#41 0x038af25f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#42 0x038af990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#43 0x038afc2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#44 0x02403ada in QEventDispatcherGlib::processEvents (this=0x9322248, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#45 0x0100ce7a in QGuiEventDispatcherGlib::processEvents (this=0x9322248, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#46 0x023d41dd in QEventLoop::processEvents (this=0xbfbc0e14, flags=...) at kernel/qeventloop.cpp:149
#47 0x023d4421 in QEventLoop::exec (this=0xbfbc0e14, flags=...) at kernel/qeventloop.cpp:201
#48 0x023d919d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#49 0x00f52924 in QApplication::exec () at kernel/qapplication.cpp:3760
#50 0x080507ac in main (argc=) at ../../../ark/app/main.cpp:209
Comment 89 blackmetalowiec 2012-03-15 09:11:39 UTC
Created attachment 69637 [details]
New crash information added by DrKonqi

ark (2.17) on KDE Platform 4.7.4 (4.7.4) using Qt 4.7.4

- What I was doing when the application crashed:

closing archive ..........................

-- Backtrace (Reduced):
#11 0x00ad5470 in QList (this=0xb65a3b90, l=...) at /usr/include/qt4/QtCore/qlist.h:118
#12 QForeachContainer (t=..., this=0xb65a3b90) at /usr/include/qt4/QtCore/qglobal.h:2253
#13 Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x8e80d38, archiveEntry=...) at ../../../ark/kerfuffle/archiveinterface.cpp:82
[...]
Comment 90 Raphael Kubo da Costa 2012-03-20 17:15:56 UTC
*** Bug 296445 has been marked as a duplicate of this bug. ***
Comment 91 nn.dm55 2012-04-01 05:20:04 UTC
Created attachment 70046 [details]
Output of using Helgrind on Ark.

To make the attachment "ark-24784.helgrind.bz2", I used this command line: "valgrind --tool=helgrind --log-file=ark-%p.helgrind app/ark ~/src/irrlicht.tar.gz"
Comment 92 nn.dm55 2012-04-01 05:31:42 UTC
I think something is calling the entry method of an ReadOnlyArchiveInterface instance when the instance either has already been destroyed or is being destroyed. At lines 523 to 536 of "Output of using Helgrind on Ark", Helgrind shows that the destructor that ReadOnlyArchiveInterface inherited from QObject has already been called by the time that the entry method of the instance is called.
Comment 93 Raphael Kubo da Costa 2012-04-03 12:01:28 UTC
*** Bug 297307 has been marked as a duplicate of this bug. ***
Comment 94 Raphael Kubo da Costa 2012-04-03 12:07:10 UTC
*** Bug 281699 has been marked as a duplicate of this bug. ***
Comment 95 ben sen 2012-04-04 09:31:58 UTC
Created attachment 70137 [details]
New crash information added by DrKonqi

ark (2.18) on KDE Platform 4.8.1 (4.8.1) using Qt 4.8.1

- What I was doing when the application crashed:

I've just opened a tar archive and closed immediately before Ark finishes loading archive. So, Ark broke down.

-- Backtrace (Reduced):
#6  0x00007fc4ce0dcb97 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, archiveEntry=...) at ../../kerfuffle/archiveinterface.cpp:82
#7  0x00007fc4b92cd157 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x10fb1c0, aentry=<optimized out>) at ../../../plugins/libarchive/libarchivehandler.cpp:649
#8  0x00007fc4b92cdade in LibArchiveInterface::list (this=0x10fb1c0) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#9  0x00007fc4ce0dd8cb in Kerfuffle::ListJob::doWork (this=0x11018f0) at ../../kerfuffle/jobs.cpp:178
#10 0x00007fc4ce0ddfc1 in Kerfuffle::Job::Private::run (this=0x10feb10) at ../../kerfuffle/jobs.cpp:60
Comment 96 Raphael Kubo da Costa 2012-04-15 21:38:51 UTC
(In reply to comment #92)
> I think something is calling the entry method of an ReadOnlyArchiveInterface
> instance when the instance either has already been destroyed or is being
> destroyed. At lines 523 to 536 of "Output of using Helgrind on Ark",
> Helgrind shows that the destructor that ReadOnlyArchiveInterface inherited
> from QObject has already been called by the time that the entry method of
> the instance is called.

Thanks for spending time on it. The analysis is correct: currently, an Archive is the parent of both the ArchiveInterface and the jobs which call methods on an ArchiveInterface. When an Archive's children are destroyed, the ArchiveInterface is destroyed before the jobs (since it is added as an Archive's child before the jobs), which still try to access its data.

As you can see, the architecture in kerfuffle/ is messy and I've been working on it on and off (I've had much more time to work on Ark since the beginning of April).
Comment 97 nn.dm55 2012-04-16 18:39:55 UTC
(In reply to comment #96)
> (In reply to comment #92)
> > I think something is calling the entry method of an ReadOnlyArchiveInterface
> > instance when the instance either has already been destroyed or is being
> > destroyed. At lines 523 to 536 of "Output of using Helgrind on Ark",
> > Helgrind shows that the destructor that ReadOnlyArchiveInterface inherited
> > from QObject has already been called by the time that the entry method of
> > the instance is called.
> 
> Thanks for spending time on it. The analysis is correct: currently, an
> Archive is the parent of both the ArchiveInterface and the jobs which call
> methods on an ArchiveInterface. When an Archive's children are destroyed,
> the ArchiveInterface is destroyed before the jobs (since it is added as an
> Archive's child before the jobs), which still try to access its data.
> 
> As you can see, the architecture in kerfuffle/ is messy and I've been
> working on it on and off (I've had much more time to work on Ark since the
> beginning of April).

Would the patch at https://git.reviewboard.kde.org/r/104623/ work for you?
Comment 98 Raphael Kubo da Costa 2012-04-16 18:56:21 UTC
(In reply to comment #97)
> Would the patch at https://git.reviewboard.kde.org/r/104623/ work for you?

Not really, even though it mitigates part of the problem. I've added a few remarks there.
Comment 99 Raphael Kubo da Costa 2012-05-28 18:06:02 UTC
*** Bug 300776 has been marked as a duplicate of this bug. ***
Comment 100 Arnaud Frézet 2012-06-27 13:53:24 UTC
Created attachment 72167 [details]
New crash information added by DrKonqi

ark (2.18) on KDE Platform 4.8.4 (4.8.4) using Qt 4.8.1

- What I was doing when the application crashed:
Hi,

I was opening a large archive file (more than 1Go), the preview was too long, so i click on the  cross to close Ark, then it suddenly crashes. I'm on a laptop dell e6510 with 5400 tr/m hard drive, that's maybe it happens...

-- Backtrace (Reduced):
#14 0xb5ec1102 in qBadAlloc () at global/qglobal.cpp:1994
[...]
#18 0xb76dd0e0 in QList (this=0xb1604030, l=...) at /usr/include/qt4/QtCore/qlist.h:122
#19 QForeachContainer (t=..., this=0xb1604030) at /usr/include/qt4/QtCore/qglobal.h:2340
#20 Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x90765d8, archiveEntry=...) at ../../kerfuffle/archiveinterface.cpp:82
#21 0xb24aed49 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x90765d8, aentry=0xb0d02688) at ../../../plugins/libarchive/libarchivehandler.cpp:649
Comment 101 Jekyll Wu 2012-08-15 03:08:52 UTC
*** Bug 305172 has been marked as a duplicate of this bug. ***
Comment 102 Raphael Kubo da Costa 2012-08-17 22:39:04 UTC
*** Bug 305356 has been marked as a duplicate of this bug. ***
Comment 103 Raphael Kubo da Costa 2012-08-28 11:45:26 UTC
*** Bug 305870 has been marked as a duplicate of this bug. ***
Comment 104 Raphael Kubo da Costa 2012-08-29 00:43:52 UTC
*** Bug 305905 has been marked as a duplicate of this bug. ***
Comment 105 Brandon Withem 2012-08-29 13:58:33 UTC
Ok. Thank you for being patient with my eccentric emails and resolving what
the actual issue is.
On Aug 28, 2012 7:44 PM, "Raphael Kubo da Costa" <rakuco@freebsd.org> wrote:

> https://bugs.kde.org/show_bug.cgi?id=193908
>
> Raphael Kubo da Costa <rakuco@FreeBSD.org> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>                  CC|                            |deafpyrotiger@gmail.com
>
> --- Comment #104 from Raphael Kubo da Costa <rakuco@FreeBSD.org> ---
> *** Bug 305905 has been marked as a duplicate of this bug. ***
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
>
Comment 106 Raphael Kubo da Costa 2012-10-16 11:38:02 UTC
*** Bug 308388 has been marked as a duplicate of this bug. ***
Comment 107 Raphael Kubo da Costa 2012-10-21 21:43:11 UTC
*** Bug 308772 has been marked as a duplicate of this bug. ***
Comment 108 Raphael Kubo da Costa 2012-10-25 18:44:00 UTC
*** Bug 308984 has been marked as a duplicate of this bug. ***
Comment 109 Raphael Kubo da Costa 2012-12-02 21:14:46 UTC
*** Bug 311002 has been marked as a duplicate of this bug. ***
Comment 110 captainstormy 2012-12-10 02:27:35 UTC
Created attachment 75762 [details]
New crash information added by DrKonqi

ark (2.18) on KDE Platform 4.8.5 (4.8.5) "release 2" using Qt 4.8.1

- What I was doing when the application crashed:

Closed ARK while it was still trying to open a large archrive.

-- Backtrace (Reduced):
#5  0x00007fec18240407 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, archiveEntry=...) at /usr/src/debug/ark-4.8.5/kerfuffle/archiveinterface.cpp:82
#6  0x00007fec0535837d in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x1cb94e0, aentry=<optimized out>) at /usr/src/debug/ark-4.8.5/plugins/libarchive/libarchivehandler.cpp:649
#7  0x00007fec05358e5e in LibArchiveInterface::list (this=0x1cb94e0) at /usr/src/debug/ark-4.8.5/plugins/libarchive/libarchivehandler.cpp:115
#8  0x00007fec18240d4e in Kerfuffle::ListJob::doWork (this=0x1cb6d60) at /usr/src/debug/ark-4.8.5/kerfuffle/jobs.cpp:178
#9  0x00007fec18241431 in Kerfuffle::Job::Private::run (this=0x1cd9590) at /usr/src/debug/ark-4.8.5/kerfuffle/jobs.cpp:60
Comment 111 Jana Domorowski 2013-01-08 14:36:02 UTC
Created attachment 76308 [details]
New crash information added by DrKonqi

ark (2.18) on KDE Platform 4.8.5 (4.8.5) using Qt 4.8.1

- What I was doing when the application crashed:

I closed ark with x while loading an .tar.bz2 file.

-- Backtrace (Reduced):
#7  Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x8f33880, archiveEntry=...) at ../../kerfuffle/archiveinterface.cpp:83
#8  0x02200d49 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x8f33880, aentry=0xb4b02680) at ../../../plugins/libarchive/libarchivehandler.cpp:649
#9  0x0220177a in LibArchiveInterface::list (this=0x8f33880) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#10 0x0058cfdf in Kerfuffle::ListJob::doWork (this=0x8cce890) at ../../kerfuffle/jobs.cpp:178
#11 0x0058d855 in Kerfuffle::Job::Private::run (this=0x8f18690) at ../../kerfuffle/jobs.cpp:60
Comment 112 Per (phobie) 2013-01-28 11:50:44 UTC
Created attachment 76771 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.9.4 using Qt 4.8.3

New backtrace for ark 2.19 on kde 4.9.4 (ubuntu/quantal)

-- Backtrace (Reduced):
#5  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:234
[...]
#7  0x00007f817fce76c5 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, _t1=...) at ./archiveinterface.moc:125
#8  0x00007f816a7b9cfd in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x29e32c0, aentry=<optimized out>) at ../../../plugins/libarchive/libarchivehandler.cpp:651
#9  0x00007f816a7ba7de in LibArchiveInterface::list (this=0x29e32c0) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#10 0x00007f817fce8300 in Kerfuffle::ListJob::doWork (this=0x29d57a0) at ../../kerfuffle/jobs.cpp:192
Comment 113 Christoph Feck 2013-01-31 01:16:36 UTC
*** Bug 314162 has been marked as a duplicate of this bug. ***
Comment 114 Ovidiu-Florin BOGDAN 2013-02-06 17:52:30 UTC
Created attachment 76949 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.00 using Qt 4.8.2

- What I was doing when the application crashed:

Oppened a 30 GB tar.gz archive. 
Archive started loading... 
When I tryed to close Ark, it crached.

-- Backtrace (Reduced):
#6  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:229
[...]
#8  0x00007f8a788f6735 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, _t1=...) at ./archiveinterface.moc:125
#9  0x00007f8a635cd157 in LibArchiveInterface::emitEntryFromArchiveEntry (this=0x26ebb30, aentry=<optimized out>) at ../../../plugins/libarchive/libarchivehandler.cpp:651
#10 0x00007f8a635cdade in LibArchiveInterface::list (this=0x26ebb30) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#11 0x00007f8a788f73ad in Kerfuffle::ListJob::doWork (this=0x26eb220) at ../../kerfuffle/jobs.cpp:192
Comment 115 Jekyll Wu 2013-02-19 01:54:29 UTC
*** Bug 315423 has been marked as a duplicate of this bug. ***
Comment 116 Raphael Kubo da Costa 2013-02-20 20:18:09 UTC
*** Bug 315539 has been marked as a duplicate of this bug. ***
Comment 117 Mustafa Muhammad 2013-03-09 06:01:42 UTC
Created attachment 77880 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.00 "release 1" using Qt 4.8.4

- What I was doing when the application crashed:

I closed Ark while loading large file.
Ark version 2.19
KDE version 4.10

-- Backtrace (Reduced):
#5  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:242
[...]
#7  0x00007f5e99bd7b55 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, _t1=...) at /usr/src/debug/ark-4.10.0/build/kerfuffle/archiveinterface.moc:125
#8  0x00007f5e85f8c38d in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0xe19780, aentry=<optimized out>) at /usr/src/debug/ark-4.10.0/plugins/libarchive/libarchivehandler.cpp:651
#9  0x00007f5e85f8ce6e in LibArchiveInterface::list (this=0xe19780) at /usr/src/debug/ark-4.10.0/plugins/libarchive/libarchivehandler.cpp:115
#10 0x00007f5e99bd8790 in Kerfuffle::ListJob::doWork (this=0xe2ad00) at /usr/src/debug/ark-4.10.0/kerfuffle/jobs.cpp:192
Comment 118 wintonian 2013-03-17 21:15:20 UTC
Created attachment 78143 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.1 using Qt 4.8.4

- What I was doing when the application crashed:

I opend up an archive in ark and before it had loaded the contents I exited ark.

Basicly it's still buged in Raring beta 1.

-- Backtrace (Reduced):
#6  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:239
[...]
#8  0x00007ff99b7c0545 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, _t1=...) at ./archiveinterface.moc:125
#9  0x00007ff98642dcbd in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x1265260, aentry=<optimized out>) at ../../../plugins/libarchive/libarchivehandler.cpp:651
#10 0x00007ff986430a7e in LibArchiveInterface::list (this=0x1265260) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#11 0x00007ff99b7c0fd0 in Kerfuffle::ListJob::doWork (this=0x1006360) at ../../kerfuffle/jobs.cpp:192
Comment 119 wintonian 2013-03-25 07:28:26 UTC
Created attachment 78366 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.1 using Qt 4.8.4

- What I was doing when the application crashed:

I guess creating/ operning a 22.7 gb archive is a bad idea.

Attempting instilation of debug symbols fails with non-descriptive error messege.

-- Backtrace (Reduced):
#6  0x000000374fe18965 in Kerfuffle::ReadOnlyArchiveInterface::entry(QHash<int, QVariant> const&) () from /lib64/libkerfuffle.so.4
#7  0x00007f5748f11dcd in LibArchiveInterface::emitEntryFromArchiveEntry(archive_entry*) () from /usr/lib64/kde4/kerfuffle_libarchive.so
#8  0x00007f5748f128ae in LibArchiveInterface::list() () from /usr/lib64/kde4/kerfuffle_libarchive.so
#9  0x000000374fe195a0 in Kerfuffle::ListJob::doWork() () from /lib64/libkerfuffle.so.4
#10 0x000000374fe19301 in Kerfuffle::Job::Private::run() () from /lib64/libkerfuffle.so.4
Comment 120 Marci Lipusz 2013-03-25 13:33:15 UTC
Created attachment 78374 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.1 "release 545" using Qt 4.8.4

I opened a bigger compressed file(around 150MB) and closed it before it totally loaded. I have kde 4.10 with openSUSE 12.3 64bit

-- Backtrace (Reduced):
#5  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:242
[...]
#7  0x00007f196f7dfb55 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=<optimized out>, _t1=...) at /usr/src/debug/ark-4.10.1/build/kerfuffle/archiveinterface.moc:125
#8  0x00007f195bb7138d in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0xd4eed0, aentry=<optimized out>) at /usr/src/debug/ark-4.10.1/plugins/libarchive/libarchivehandler.cpp:651
#9  0x00007f195bb71e6e in LibArchiveInterface::list (this=0xd4eed0) at /usr/src/debug/ark-4.10.1/plugins/libarchive/libarchivehandler.cpp:115
#10 0x00007f196f7e0790 in Kerfuffle::ListJob::doWork (this=0x110dbd0) at /usr/src/debug/ark-4.10.1/kerfuffle/jobs.cpp:192
Comment 121 Jekyll Wu 2013-04-01 09:24:30 UTC
*** Bug 317672 has been marked as a duplicate of this bug. ***
Comment 122 Raphael Kubo da Costa 2013-04-03 11:29:59 UTC
*** Bug 317777 has been marked as a duplicate of this bug. ***
Comment 123 Ilya w495 Nikitin 2013-04-21 19:05:18 UTC
Created attachment 79072 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.2 using Qt 4.8.4

- What I was doing when the application crashed:
Try to open tar.bz2 (~33 Gb) and compress 7Gb tar to bz2 as a parallel task.

-- Backtrace (Reduced):
#6  0x0000003440418965 in Kerfuffle::ReadOnlyArchiveInterface::entry(QHash<int, QVariant> const&) () from /lib64/libkerfuffle.so.4
#7  0x00007f9c621d4dcd in LibArchiveInterface::emitEntryFromArchiveEntry(archive_entry*) () from /usr/lib64/kde4/kerfuffle_libarchive.so
#8  0x00007f9c621d58ae in LibArchiveInterface::list() () from /usr/lib64/kde4/kerfuffle_libarchive.so
#9  0x00000034404195a0 in Kerfuffle::ListJob::doWork() () from /lib64/libkerfuffle.so.4
#10 0x0000003440419301 in Kerfuffle::Job::Private::run() () from /lib64/libkerfuffle.so.4
Comment 124 Raphael Kubo da Costa 2013-05-29 11:52:15 UTC
*** Bug 320290 has been marked as a duplicate of this bug. ***
Comment 125 Arjun AK 2013-06-18 08:37:56 UTC
Created attachment 80602 [details]
Backtrace
Comment 126 Raphael Kubo da Costa 2013-07-19 09:24:32 UTC
*** Bug 322551 has been marked as a duplicate of this bug. ***
Comment 127 Brandon Withem 2013-07-19 13:51:38 UTC
Obviously nothing is being done about this particular bug for the last 2
years at least. Please remove me from the cc list.
On Jul 19, 2013 2:24 AM, "Raphael Kubo da Costa" <rakuco@freebsd.org> wrote:

> https://bugs.kde.org/show_bug.cgi?id=193908
>
> Raphael Kubo da Costa <rakuco@FreeBSD.org> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>                  CC|                            |mehmet.kose@gmail.com
>
> --- Comment #126 from Raphael Kubo da Costa <rakuco@FreeBSD.org> ---
> *** Bug 322551 has been marked as a duplicate of this bug. ***
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
>
Comment 128 tosiara 2013-07-19 18:11:01 UTC
Indeed, ether fix this or close as NO-FIX and stop sending updates
Comment 129 Clemens Eisserer 2013-07-19 18:53:41 UTC
In my opinion this bug report shows a major problem of KDE - the not invented here syndrome.
It doesn't make a lot of sence to re-write every existing application out there just to make it QT based and KDE integrated. In a few years new apps will be created but nobody will be there to maintain all the existing apps, like its the case with Ark. 
Wouldn't it have been better to ship XArchiver with KDE and make sure it is integrated well within KDE by e.g. writing a few plugins? Same holds true in my opinion for a lot of KDE code like KMail, Amarok, Kopete, ....
Comment 130 Steve Atty 2013-07-20 11:19:52 UTC
I have given up waiting for a fix... What is the point of having a bug tracking system when no-one is actually doing anything to fix things.
Comment 131 Jekyll Wu 2013-07-20 15:46:05 UTC
(In reply to comment #128)
> Indeed, ether fix this or close as NO-FIX and stop sending updates

3rd option: (you can) remove yourself from the CC list if you feel bothered, just like some others have already done. 

 (In reply to comment #129)
> In my opinion this bug report shows a major problem of KDE - the not
> invented here syndrome.

Please keep the discussion on topic. Anyway, you should really realize that many  KDE apps exist earlier than similar apps. Ark is one of them. NIH is certainly not applicable to it .

By the way, the last real commit in XArchiver was almost 4 years ago. Does look like a good example to back up your suggestion. 
 

(In reply to comment #130)
> I have given up waiting for a fix... What is the point of having a bug tracking system when no-one is actually doing anything to fix things.

Please do not exaggerate what is happening in Ark(or KDE) just because your pet bug is not dealt with.  That makes no help to anything.
Comment 132 Jekyll Wu 2013-08-29 10:25:09 UTC
*** Bug 324211 has been marked as a duplicate of this bug. ***
Comment 133 Markus Walser 2013-09-09 15:41:51 UTC
Created attachment 82240 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.10.5 "release 1" using Qt 4.8.4

- What I was doing when the application crashed:
Closing karch while it was busy extracting. 
Attachted you find another callstack. I hope it may be usefull. Thanks for your work.

Original KDE from OpenSuSE 12.3.

Kind regards, Markus

-- Backtrace (Reduced):
#6  isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:242
[...]
#8  0xb76d2ba5 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=0x89ad300, _t1=...) at /usr/src/debug/ark-4.10.5/build/kerfuffle/archiveinterface.moc:125
#9  0xb37e4ee1 in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x89ad300, aentry=0xb20027c0) at /usr/src/debug/ark-4.10.5/plugins/libarchive/libarchivehandler.cpp:651
#10 0xb37e5a7c in LibArchiveInterface::list (this=0x89ad300) at /usr/src/debug/ark-4.10.5/plugins/libarchive/libarchivehandler.cpp:115
#11 0xb76d3c4a in Kerfuffle::ListJob::doWork (this=0x8970fb8) at /usr/src/debug/ark-4.10.5/kerfuffle/jobs.cpp:192
Comment 134 Jekyll Wu 2013-09-26 21:27:36 UTC
*** Bug 325339 has been marked as a duplicate of this bug. ***
Comment 135 Tommi Tervo 2013-11-10 16:53:35 UTC
*** Bug 327414 has been marked as a duplicate of this bug. ***
Comment 136 ken 2013-11-25 08:24:40 UTC
Created attachment 83748 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.11.2 using Qt 4.8.5

- What I was doing when the application crashed:
Closed Ark while the archive is still being loaded.

-- Backtrace (Reduced):
#5  0x00007f09f905eaf7 in isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:240
[...]
#7  0x00007f09fb5627b5 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=this@entry=0x1ab3820, _t1=...) at /usr/src/debug/ark-4.11.2/build/kerfuffle/archiveinterface.moc:124
#8  0x00007f09dd2e13f2 in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x1ab3820, aentry=<optimized out>) at /usr/src/debug/ark-4.11.2/plugins/libarchive/libarchivehandler.cpp:651
#9  0x00007f09dd2e223d in LibArchiveInterface::list (this=0x1ab3820) at /usr/src/debug/ark-4.11.2/plugins/libarchive/libarchivehandler.cpp:115
#10 0x00007f09fb563274 in Kerfuffle::ListJob::doWork (this=0x1b1ebd0) at /usr/src/debug/ark-4.11.2/kerfuffle/jobs.cpp:192
Comment 137 Raphael Kubo da Costa 2013-12-30 10:01:40 UTC
*** Bug 329369 has been marked as a duplicate of this bug. ***
Comment 138 Christoph Feck 2014-01-18 00:46:20 UTC
*** Bug 330093 has been marked as a duplicate of this bug. ***
Comment 139 Maarten Bezemer 2014-05-06 10:22:06 UTC
It is still an issue with Ark 2.19 on KDE 4.13 (Kubuntu 14.04)
Comment 140 Clemens Eisserer 2014-05-06 19:46:31 UTC
This is a serious crasher-bug, reported almost 5 years ago.

Please remove Ark from the KDE Software Distribution / Compilation as it seems to be completely unmaintained, as this bug report proves.
Comment 141 darkartek 2014-05-09 10:11:49 UTC
Created attachment 86539 [details]
New crash information added by DrKonqi

ark (2.19) on KDE Platform 4.13.0 using Qt 4.8.6

- What I was doing when the application crashed:

Opening ecplise archive, trying to rename another archive

-- Backtrace (Reduced):
#5  0x00007f8dbda02607 in isSignalConnected (signal_index=4, this=0x0) at kernel/qobject_p.h:237
[...]
#7  0x00007f8dbfeca345 in Kerfuffle::ReadOnlyArchiveInterface::entry (this=this@entry=0x25c9500, _t1=...) at ./archiveinterface.moc:124
#8  0x00007f8daa24fd82 in LibArchiveInterface::emitEntryFromArchiveEntry (this=this@entry=0x25c9500, aentry=<optimized out>) at ../../../plugins/libarchive/libarchivehandler.cpp:651
#9  0x00007f8daa250bed in LibArchiveInterface::list (this=0x25c9500) at ../../../plugins/libarchive/libarchivehandler.cpp:115
#10 0x00007f8dbfecae04 in Kerfuffle::ListJob::doWork (this=0x23ffbc0) at ../../kerfuffle/jobs.cpp:192
Comment 142 Raphael Kubo da Costa 2014-05-12 14:04:55 UTC
*** Bug 334659 has been marked as a duplicate of this bug. ***
Comment 143 Unknown 2014-05-12 19:31:10 UTC
Ok, I'm bored with ark. This bug has *huuuuuge* history (even before my backtrace there were bugs about this issue), tons of CC, tons of duplicates [1]. There was someone trying to fix things one way or another (check the comments, if you are brave enough), but just nobody cares…

[1] 166751 204621 205436 208262 210472 210766 212721 189419 208104 216415 217528 217893 215974 218558 220165 229734 229847 233284 234902 235054 238210 238356 242187 245031 244968 249255 250835 251147 251177 251152 251179 253129 256115 261082 262124 268003 268438 269186 269204 272016 272700 273285 274876 278447 279735 279736 280042 282522 286132 283998 287423 290692 291597 292714 294761 296445 297307 281699 300776 305172 305356 305870 305905 305905 308388 308772 308984 311002 314162 315423 315539 317672 317777 320290 322551 322551 324211 325339 327414 329369 330093 334659
Comment 144 Clemens Eisserer 2014-05-12 19:33:28 UTC
Thanks Piotr!
Comment 145 Unknown 2014-05-12 21:59:41 UTC
Since this bug was reopened (reasons?! why?! WHY???!!! ;) I hope there will be a quick fix for Bug 334679. Anyone unhappy with ark bug feel free to CC in there.
EOT

Have a nice ark.
Comment 146 Albert Astals Cid 2014-05-12 22:35:48 UTC
Stop being an ***** or you'll kill the motivation i had to fix the bug,
Comment 147 Albert Astals Cid 2014-05-12 23:16:36 UTC
Tests welcome at https://git.reviewboard.kde.org/r/118108/
Comment 148 Albert Astals Cid 2014-05-14 23:01:40 UTC
Git commit acb455da04c473da39a5d99d4212f1d9c88abee5 by Albert Astals Cid.
Committed on 14/05/2014 at 22:59.
Pushed by aacid into branch 'KDE/4.13'.

Properly stop list jobs on close

Track running jobs in JobTracker. On its destruction (i.e. UI is going down) we kill and delete (which waits for finishing) those jobs.

Tested with very big tar.gz (libarchive plugin) and .zip (cliplugin) and it closes without crashing now

Acked by rakuco
FIXED-IN: 4.13.2
REVIEW: 118108

M  +9    -2    kerfuffle/cliinterface.cpp
M  +1    -0    kerfuffle/cliinterface.h
M  +1    -1    kerfuffle/jobs.cpp
M  +10   -0    part/jobtracker.cpp
M  +2    -0    part/jobtracker.h
M  +9    -1    plugins/libarchive/libarchivehandler.cpp
M  +2    -0    plugins/libarchive/libarchivehandler.h

http://commits.kde.org/ark/acb455da04c473da39a5d99d4212f1d9c88abee5
Comment 149 Bartosz Brachaczek 2014-05-15 00:04:41 UTC
Thanks!
Comment 150 Dmitriy A. Perlow 2014-05-15 04:11:15 UTC
Wow! Thank you!
Comment 151 Raphael Kubo da Costa 2014-05-17 22:03:58 UTC
*** Bug 334957 has been marked as a duplicate of this bug. ***
Comment 152 Raphael Kubo da Costa 2014-05-26 21:36:34 UTC
*** Bug 335391 has been marked as a duplicate of this bug. ***
Comment 153 Raphael Kubo da Costa 2014-07-24 18:28:13 UTC
*** Bug 337776 has been marked as a duplicate of this bug. ***
Comment 154 Elvis Angelaccio 2015-12-28 21:02:49 UTC
*** Bug 317538 has been marked as a duplicate of this bug. ***
Comment 155 Elvis Angelaccio 2016-04-30 11:17:15 UTC
Git commit 074d52778f68c2b1456ba54633bace8e366667cb by Elvis Angelaccio.
Committed on 30/04/2016 at 11:02.
Pushed by elvisangelaccio into branch 'master'.

Don't block the main thread while running CliInterface jobs

Currently we freeze the GUI thread while running CliInterface jobs,
because there is a nested event loop in runProcess(),
which doesn't run anymore in a separate thread.

We can simply drop this event loop and rework the CliInterface logic,
such that the emit signal is not emitted anymore when runProcess() returns,
but in processFinished() instead.

This exposed a crash when closing the main window while a pending job was
running. The fix is simply to not emit finished() if the m_abortingOperation
flag is set.
Related: bug 222392
FIXED-IN: 16.08.0

Differential Revision: D1510

M  +4    -8    kerfuffle/archiveinterface.h
M  +116  -86   kerfuffle/cliinterface.cpp
M  +13   -3    kerfuffle/cliinterface.h
M  +0    -1    part/jobtracker.cpp
M  +0    -1    plugins/cliunarchiverplugin/cliplugin.cpp

http://commits.kde.org/ark/074d52778f68c2b1456ba54633bace8e366667cb
Comment 156 Elvis Angelaccio 2016-07-19 20:44:42 UTC
Git commit ead7a07ee145d41d3f3c737b93862c6ef0c067be by Elvis Angelaccio.
Committed on 19/07/2016 at 20:43.
Pushed by elvisangelaccio into branch 'Applications/16.08'.

Drop direct connection for finished signal

The direct connection was added in commit acb455da04, but since Ark 16.08 is not
necessary anymore (CliInterface runs on the main thread).

This prevents a possible race condition in our jobs
(see https://git.reviewboard.kde.org/r/128113/)

Differential Revision: D2225

M  +1    -1    kerfuffle/jobs.cpp

http://commits.kde.org/ark/ead7a07ee145d41d3f3c737b93862c6ef0c067be
Comment 157 Elvis Angelaccio 2016-09-20 16:00:34 UTC
*** Bug 367908 has been marked as a duplicate of this bug. ***