Bug 195985 - SEGV when unpacking zip over an existing directory tree using the 'Overwite All' option.
Summary: SEGV when unpacking zip over an existing directory tree using the 'Overwite A...
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: Harald Hvaal
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-06-11 10:20 UTC by Graham Hawkins
Modified: 2009-06-11 15:25 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Graham Hawkins 2009-06-11 10:20:18 UTC
Version:            (using KDE 4.2.2)
Compiler:          Not known Precompiled Ubuntu package 4:4.2.2-0ubuntu2 (juanty)
OS:                Linux
Installed from:    Ubuntu Packages

Zip was on a Sansa MP3 player, auto-mounted as a USB MSC disk. 
Target directory was also on same device.

Was actually trying to unpack a Rockbox build zip over the existing .rockbox directory.

Got duplicate filename dialogue. 
Chose 'Overwrite All'.
Got another duplicate filename dialogue. 
Chose 'Overwrite All'.
Crash.

Application: Ark (ark), signal SIGSEGV
[Current thread is 0 (LWP 8648)]

Thread 2 (Thread 0xb4208b90 (LWP 8651)):
#0  0xb7ee9430 in __kernel_vsyscall ()
#1  0xb65daae7 in poll () from /lib/tls/i686/cmov/libc.so.6
#2  0xb60dc74b in IA__g_poll (fds=0x8421ed8, nfds=1, timeout=-1) at /build/buildd/glib2.0-2.20.1/glib/gpoll.c:127
#3  0xb60cef82 in g_main_context_iterate (context=0x8566270, block=1, dispatch=1, self=0x85629e0) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2761
#4  0xb60cf268 in IA__g_main_context_iteration (context=0x8566270, may_block=1) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2511
#5  0xb68ff457 in QEventDispatcherGlib::processEvents (this=0x84c1230, flags={i = -1272937896}) at kernel/qeventdispatcher_glib.cpp:325
#6  0xb68d206a in QEventLoop::processEvents (this=0xb42082d0, flags={i = -1272937832}) at kernel/qeventloop.cpp:149
#7  0xb68d24aa in QEventLoop::exec (this=0xb42082d0, flags={i = -1272937768}) at kernel/qeventloop.cpp:200
#8  0xb67dc639 in QThread::exec (this=0x84626a8) at thread/qthread.cpp:481
#9  0xb7ebcdc7 in ?? () from /usr/lib/libkerfuffle.so.4
#10 0xb67df96e in QThreadPrivate::start (arg=0x8426f68) at thread/qthread_unix.cpp:189
#11 0xb62444ff in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#12 0xb65e549e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xb5e1e700 (LWP 8648)):
[KCrash Handler]
#6  0xb67da27f in QMutex::unlock (this=0xb41f7774) at thread/qmutex.cpp:376
#7  0xb7ec2fd1 in Kerfuffle::Query::setResponse () from /usr/lib/libkerfuffle.so.4
#8  0xb7ec3b66 in Kerfuffle::OverwriteQuery::execute () from /usr/lib/libkerfuffle.so.4
#9  0xb47b6f30 in ?? () from /usr/lib/kde4/libarkpart.so
#10 0xb47a8217 in ?? () from /usr/lib/kde4/libarkpart.so
#11 0xb68e28fb in QMetaCallEvent::placeMetaCall (this=0x84ee338, object=0x827b1c8) at kernel/qobject.cpp:489
#12 0xb68e43a0 in QObject::event (this=0x827b1c8, e=0x84ee338) at kernel/qobject.cpp:1118
#13 0xb6da4e9c in QApplicationPrivate::notify_helper (this=0x81c2f28, receiver=0x827b1c8, e=0x84ee338) at kernel/qapplication.cpp:4084
#14 0xb6dad19e in QApplication::notify (this=0xbfb050f4, receiver=0x827b1c8, e=0x84ee338) at kernel/qapplication.cpp:3631
#15 0xb79c894d in KApplication::notify (this=0xbfb050f4, receiver=0x827b1c8, event=0x84ee338) at /build/buildd/kde4libs-4.2.2/kdeui/kernel/kapplication.cpp:307
#16 0xb68d3a3b in QCoreApplication::notifyInternal (this=0xbfb050f4, receiver=0x827b1c8, event=0x84ee338) at kernel/qcoreapplication.cpp:602
#17 0xb68d4695 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x81abcc8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#18 0xb68d488d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1132
#19 0xb68ff7ef in postEventSourceDispatch (s=0x81c5110) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#20 0xb60cbb88 in IA__g_main_context_dispatch (context=0x81c5090) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#21 0xb60cf0eb in g_main_context_iterate (context=0x81c5090, block=1, dispatch=1, self=0x81c30e8) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#22 0xb60cf268 in IA__g_main_context_iteration (context=0x81c5090, may_block=1) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2511
#23 0xb68ff438 in QEventDispatcherGlib::processEvents (this=0x81afaa8, flags={i = -1078964296}) at kernel/qeventdispatcher_glib.cpp:323
#24 0xb6e46365 in QGuiEventDispatcherGlib::processEvents (this=0x81afaa8, flags={i = -1078964248}) at kernel/qguieventdispatcher_glib.cpp:202
#25 0xb68d206a in QEventLoop::processEvents (this=0xbfb05060, flags={i = -1078964184}) at kernel/qeventloop.cpp:149
#26 0xb68d24aa in QEventLoop::exec (this=0xbfb05060, flags={i = -1078964120}) at kernel/qeventloop.cpp:200
#27 0xb68d4959 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:880
#28 0xb6da4d17 in QApplication::exec () at kernel/qapplication.cpp:3553
#29 0x0805231f in _start ()
Comment 1 Raphael Kubo da Costa 2009-06-11 15:25:28 UTC
Thanks for the report.

This has already been fixed. IIRC, in trunk by revision 941613 and in 4.2 by revision 941617 -- the fix is likely to be in 4.2.3+.