Bug 301278 - ark crash toward the end of extracting rar file
Summary: ark crash toward the end of extracting rar file
Status: RESOLVED FIXED
Alias: None
Product: ark
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Raphael Kubo da Costa
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-06 12:07 UTC by SlashDevDsp
Modified: 2012-08-17 08:08 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed/Implemented In: 4.9.1
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description SlashDevDsp 2012-06-06 12:07:41 UTC
Application: ark (2.19)
KDE Platform Version: 4.8.4 (4.8.4)
Qt Version: 4.8.2
Operating System: Linux 3.4.0-030400-generic i686
Distribution: Ubuntu 11.10

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

extracting rar file with ark when it almost finished extracting ark crashed. I have installed the debug and its crashing at an assert

-- Backtrace:
Application: Ark (ark), signal: Aborted
[KCrash Handler]
#7  0xb77a0424 in __kernel_vsyscall ()
#8  0xb59a6c8f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0xb59aa2b5 in __GI_abort () at abort.c:92
#10 0xb5c724f7 in qt_message_output (msgType=QtFatalMsg, buf=0xb1c00a88 "ASSERT: \"!m_process\" in file /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp, line 78") at global/qglobal.cpp:2264
#11 0xb5c72696 in qt_message (msgType=QtFatalMsg, msg=0xb5e175d4 "ASSERT: \"%s\" in file %s, line %d", ap=0xbff14f04 "R*y\267P)y\267N") at global/qglobal.cpp:2310
#12 0xb5c72ac2 in qFatal (msg=0xb5e175d4 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2493
#13 0xb5c720ae in qt_assert (assertion=0xb7792a52 "!m_process", file=0xb7792950 "/build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp", line=78) at global/qglobal.cpp:2011
#14 0xb7788e60 in Kerfuffle::CliInterface::~CliInterface (this=0x923bf38, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp:78
#15 0xb38db69e in CliPlugin::~CliPlugin (this=0x923bf38, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/plugins/clirarplugin/cliplugin.cpp:45
#16 0xb38db6d9 in CliPlugin::~CliPlugin (this=0x923bf38, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/plugins/clirarplugin/cliplugin.cpp:47
#17 0xb5db5f1c in QObjectPrivate::deleteChildren (this=0x923abd8) at kernel/qobject.cpp:1908
#18 0xb5db4834 in QObject::~QObject (this=0x9098910, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#19 0xb7779e97 in Kerfuffle::Archive::~Archive (this=0x9098910, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/archive.cpp:131
#20 0xb7779ed1 in Kerfuffle::Archive::~Archive (this=0x9098910, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/archive.cpp:133
#21 0xb5db5f1c in QObjectPrivate::deleteChildren (this=0x91e8538) at kernel/qobject.cpp:1908
#22 0xb5db4834 in QObject::~QObject (this=0x91f2cf0, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#23 0xb60662cb in KJob::~KJob (this=0x91f2cf0, __in_chrg=<optimized out>) at /build/buildd/project-neon-kdelibs-2+git20120605+r92752/kdecore/jobs/kjob.cpp:65
#24 0xb60652db in KCompositeJob::~KCompositeJob (this=0x91f2cf0, __in_chrg=<optimized out>) at /build/buildd/project-neon-kdelibs-2+git20120605+r92752/kdecore/jobs/kcompositejob.cpp:42
#25 0x0804f6d3 in BatchExtract::~BatchExtract (this=0x91f2cf0, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/batchextract.cpp:60
#26 0x0804f6fd in BatchExtract::~BatchExtract (this=0x91f2cf0, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/batchextract.cpp:65
#27 0xb5dbad4f in qDeleteInEventHandler (o=0x91f2cf0) at kernel/qobject.cpp:4277
#28 0xb5db4d34 in QObject::event (this=0x91f2cf0, e=0xb1c006a8) at kernel/qobject.cpp:1176
#29 0xb63b210c in QApplicationPrivate::notify_helper (this=0x909ad38, receiver=0x91f2cf0, e=0xb1c006a8) at kernel/qapplication.cpp:4551
#30 0xb63afa0a in QApplication::notify (this=0xbff15a20, receiver=0x91f2cf0, e=0xb1c006a8) at kernel/qapplication.cpp:3933
#31 0xb709f88a in KApplication::notify (this=0xbff15a20, receiver=0x91f2cf0, event=0xb1c006a8) at /build/buildd/project-neon-kdelibs-2+git20120605+r92752/kdeui/kernel/kapplication.cpp:311
#32 0xb5d9de66 in QCoreApplication::notifyInternal (this=0xbff15a20, receiver=0x91f2cf0, event=0xb1c006a8) at kernel/qcoreapplication.cpp:915
#33 0xb5da15cd in QCoreApplication::sendEvent (receiver=0x91f2cf0, event=0xb1c006a8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#34 0xb5d9ed62 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x907b370) at kernel/qcoreapplication.cpp:1539
#35 0xb5d9ea1f in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1432
#36 0xb5dd5624 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#37 0xb5dd47a2 in postEventSourceDispatch (s=0x909bad0) at kernel/qeventdispatcher_glib.cpp:279
#38 0xb4f8273a in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#39 0xb4f82b45 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#40 0xb4f82c21 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#41 0xb5dd4f54 in QEventDispatcherGlib::processEvents (this=0x907bed8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#42 0xb647b768 in QGuiEventDispatcherGlib::processEvents (this=0x907bed8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#43 0xb5d9b5f1 in QEventLoop::processEvents (this=0xbff1595c, flags=...) at kernel/qeventloop.cpp:149
#44 0xb5d9b75f in QEventLoop::exec (this=0xbff1595c, flags=...) at kernel/qeventloop.cpp:204
#45 0xb5d9e4e2 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#46 0xb63af67e in QApplication::exec () at kernel/qapplication.cpp:3812
#47 0x08055189 in main (argc=6, argv=0xbff15dd4) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/main.cpp:209

Possible duplicates by query: bug 298008, bug 298006, bug 298005, bug 291961, bug 291369.

Reported using DrKonqi
Comment 1 Raphael Kubo da Costa 2012-06-07 18:02:30 UTC
Is this reproducible? If so, can you attach or link to this file, or provide another one which causes the crash? What unrar version is being used?
Comment 2 SlashDevDsp 2012-06-07 22:27:41 UTC
Yes this is reproducible, its happening on all zip and rar files, that I have tested.
Comment 3 Raphael Kubo da Costa 2012-06-07 22:40:56 UTC
Right, then please attach one of these files here, and tell which unrar and unzip versions you are using.
Comment 4 SlashDevDsp 2012-06-10 12:20:49 UTC
dpkg-query -l unzip
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
ii  unzip          6.0-4ubuntu1   De-archiver for .zip files


dodo@elcrapo:~/Downloads/$ unzip -h
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.

File I tried to extract which crashed is available here: http://technorumor.blogspot.com.au/2012/03/download-chrome-os-default-wallpapers.html

its a set of wallpapers.
Comment 5 SlashDevDsp 2012-06-10 12:23:12 UTC
The latest crash with todays update for project neon with the above zip file

Application: Ark (ark), signal: Aborted
[KCrash Handler]
#7  0xb76e8424 in __kernel_vsyscall ()
#8  0xb58efc8f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0xb58f32b5 in __GI_abort () at abort.c:92
#10 0xb5bbb4f7 in qt_message_output (msgType=QtFatalMsg, buf=0x92e26b8 "ASSERT: \"!m_process\" in file /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp, line 78") at global/qglobal.cpp:2264
#11 0xb5bbb696 in qt_message (msgType=QtFatalMsg, msg=0xb5d605f4 "ASSERT: \"%s\" in file %s, line %d", ap=0xbfd47d44 "R\252m\267P\251m\267N") at global/qglobal.cpp:2310
#12 0xb5bbbac2 in qFatal (msg=0xb5d605f4 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2493
#13 0xb5bbb0ae in qt_assert (assertion=0xb76daa52 "!m_process", file=0xb76da950 "/build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp", line=78) at global/qglobal.cpp:2011
#14 0xb76d0e60 in Kerfuffle::CliInterface::~CliInterface (this=0x92c74f8, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/cliinterface.cpp:78
#15 0xb3825295 in CliPlugin::~CliPlugin (this=0x92c74f8, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/plugins/clizipplugin/cliplugin.cpp:43
#16 0xb38252cf in CliPlugin::~CliPlugin (this=0x92c74f8, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/plugins/clizipplugin/cliplugin.cpp:45
#17 0xb5cfef28 in QObjectPrivate::deleteChildren (this=0x91225b0) at kernel/qobject.cpp:1908
#18 0xb5cfd840 in QObject::~QObject (this=0x92be1d8, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#19 0xb76c1e97 in Kerfuffle::Archive::~Archive (this=0x92be1d8, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/archive.cpp:131
#20 0xb76c1ed1 in Kerfuffle::Archive::~Archive (this=0x92be1d8, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/kerfuffle/archive.cpp:133
#21 0xb5cfef28 in QObjectPrivate::deleteChildren (this=0x926a880) at kernel/qobject.cpp:1908
#22 0xb5cfd840 in QObject::~QObject (this=0x92728f0, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#23 0xb5faf2cb in KJob::~KJob (this=0x92728f0, __in_chrg=<optimized out>) at /build/buildd/project-neon-kdelibs-2+git20120608+r92761/kdecore/jobs/kjob.cpp:65
#24 0xb5fae2db in KCompositeJob::~KCompositeJob (this=0x92728f0, __in_chrg=<optimized out>) at /build/buildd/project-neon-kdelibs-2+git20120608+r92761/kdecore/jobs/kcompositejob.cpp:42
#25 0x0804f6d3 in BatchExtract::~BatchExtract (this=0x92728f0, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/batchextract.cpp:60
#26 0x0804f6fd in BatchExtract::~BatchExtract (this=0x92728f0, __in_chrg=<optimized out>) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/batchextract.cpp:65
#27 0xb5d03d5b in qDeleteInEventHandler (o=0x92728f0) at kernel/qobject.cpp:4277
#28 0xb5cfdd40 in QObject::event (this=0x92728f0, e=0x92aa268) at kernel/qobject.cpp:1176
#29 0xb62fb10c in QApplicationPrivate::notify_helper (this=0x9121c98, receiver=0x92728f0, e=0x92aa268) at kernel/qapplication.cpp:4551
#30 0xb62f8a0a in QApplication::notify (this=0xbfd48860, receiver=0x92728f0, e=0x92aa268) at kernel/qapplication.cpp:3933
#31 0xb6fe88c6 in KApplication::notify (this=0xbfd48860, receiver=0x92728f0, event=0x92aa268) at /build/buildd/project-neon-kdelibs-2+git20120608+r92761/kdeui/kernel/kapplication.cpp:311
#32 0xb5ce6e72 in QCoreApplication::notifyInternal (this=0xbfd48860, receiver=0x92728f0, event=0x92aa268) at kernel/qcoreapplication.cpp:915
#33 0xb5cea5d9 in QCoreApplication::sendEvent (receiver=0x92728f0, event=0x92aa268) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#34 0xb5ce7d6e in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9102370) at kernel/qcoreapplication.cpp:1539
#35 0xb5ce7a2b in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1432
#36 0xb5d1e630 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#37 0xb5d1d7ae in postEventSourceDispatch (s=0x9122a30) at kernel/qeventdispatcher_glib.cpp:279
#38 0xb4eca73a in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#39 0xb4ecab45 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#40 0xb4ecac21 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#41 0xb5d1df60 in QEventDispatcherGlib::processEvents (this=0x9102ed8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#42 0xb63c4768 in QGuiEventDispatcherGlib::processEvents (this=0x9102ed8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#43 0xb5ce45fd in QEventLoop::processEvents (this=0xbfd4879c, flags=...) at kernel/qeventloop.cpp:149
#44 0xb5ce476b in QEventLoop::exec (this=0xbfd4879c, flags=...) at kernel/qeventloop.cpp:204
#45 0xb5ce74ee in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#46 0xb62f867e in QApplication::exec () at kernel/qapplication.cpp:3812
#47 0x08055189 in main (argc=5, argv=0xbfd48c14) at /build/buildd/project-neon-ark-2+git20120528+r2445/app/main.cpp:209
Comment 6 Raphael Kubo da Costa 2012-08-08 07:00:29 UTC
Hmm, this looks similar to bug 304067, and it also reminds me of bug 304764 (with the difference that this one fails due to a corrupted archive).
Comment 7 Raphael Kubo da Costa 2012-08-16 15:39:18 UTC
I've been trying to reproduce this crash for some time but haven't been able to do so. Do you still have this problem when extracting zip/rar files via Dolphin's context menu? Does running "ark -bea <archive>" from a terminal always crash the same way for you?
Comment 8 Raphael Kubo da Costa 2012-08-17 08:08:32 UTC
Git commit e21c15b3e048178a8fa7e13e2734d8988221031f by Raphael Kubo da Costa.
Committed on 17/08/2012 at 10:04.
Pushed by rkcosta into branch 'KDE/4.9'.

Delete m_process earlier.

Deleting and setting m_process to 0 at the end of runProcess() is
sometimes too late.

If one connects to KJob::result() to delete an archive interface, that
is all going to happen when finished() is emitted in processFinished()
and before `delete m_process' is called in runProcess(). This ends up
leaving us with a non-NULL m_process, causing the assert in
CliInterface's destructor to fail.

Delete m_process and set it to 0 in processFinished() itself, since it
is not supposed to be used afterwards anyway.
Related: bug 304067
FIXED-IN: 4.9.1

M  +4    -2    kerfuffle/cliinterface.cpp

http://commits.kde.org/ark/e21c15b3e048178a8fa7e13e2734d8988221031f