Bug 176386 - Extracting does not warn of overwriting file
Summary: Extracting does not warn of overwriting file
Status: RESOLVED WORKSFORME
Alias: None
Product: ark
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Compiled Sources Unspecified
: NOR normal
Target Milestone: ---
Assignee: Harald Hvaal
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-11-28 23:47 UTC by Albert Astals Cid
Modified: 2009-04-05 23:55 UTC (History)
3 users (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 Albert Astals Cid 2008-11-28 23:47:09 UTC
Version:            (using Devel)
Installed from:    Compiled sources

How to reproduce:
 * Open a foo.7z file that has only one file inside (created previously with ark)
 * Do not select anything in the list view
 * Extract it to a folder
 * Modify the contents of the extracted file
 * Extract it to the same folder
 * Your changes are lost without any warning
Comment 1 Harald Hvaal 2008-11-29 04:09:02 UTC
Although I have not testet it yet, I believe this has been fixed very recently in one or two commits by ymchen: 890332 and/or 887841 (both commits containing code related to overwriting confirmation support). Will keep the bug open until next time I have updated and compiled ark, and see if it's still there.
Comment 2 Albert Astals Cid 2008-11-29 12:32:27 UTC
Ok, now i get a dialog saying there is already a file with this name. The dialog has 5 options, wathever option i press, i get shown an empty dialog with a big red cross.

Still quite bad.
Comment 3 Dario Andres 2008-12-20 16:32:32 UTC
Here using:

Qt: 4.4.3                 
KDE: 4.1.85 (KDE 4.1.85 (KDE 4.2 Beta2))
kdelibs svn rev. 899135 / kdebase svn rev. 899135
kdeutils svn rev. 899332
on ArchLinux x86_64 - Kernel 2.6.27.8

While trying to reproduce this bug, (pressing "Skip" option or "Overwrite" in the File Overwrite dialog) Ark crashed (I suppose you're in the middle of a lot of bug fixing)

Here is the backtrace :

Application: Ark (ark), signal SIGABRT
0x00007f17313f7001 in nanosleep () from /lib/libc.so.6
[Current thread is 0 (LWP 14532)]

Thread 3 (Thread 0x7f172684c950 (LWP 14533)):
...
Thread 2 (Thread 0x7f1725c3c950 (LWP 14536)):
...

Thread 1 (Thread 0x7f173502d750 (LWP 14532)):
[KCrash Handler]
#5  0x00007f173138a0c5 in raise () from /lib/libc.so.6
#6  0x00007f173138b5e3 in abort () from /lib/libc.so.6
#7  0x00007f17320c3a25 in qt_message_output (msgType=QtFatalMsg, buf=<value optimized out>) at global/qglobal.cpp:2102
#8  0x00007f17320c3b47 in qFatal (msg=<value optimized out>) at global/qglobal.cpp:2303
#9  0x00007f17320c6499 in QMutex::unlock (this=0x7f172684b968) at thread/qmutex.cpp:332
#10 0x00007f1734d48203 in Kerfuffle::Query::setResponse (this=0x7f172684b950, response=
      {d = {data = {c = 32 ' ', i = 1024899872, u = 1024899872, b = 32, d = 6.953194245037626e-310, ll = 140734218287904, ull = 140734218287904, ptr = 0x7fff3d16bb20, shared = 0x7fff3d16bb20}, type = 1024899872, is_shared = 0, is_null = 0}, static handler = 0x7f1732ec4900}) at /home/kde-devel/kde/src/KDE/kdeutils/ark/kerfuffle/queries.cpp:53
#11 0x00007f1734d49171 in Kerfuffle::OverwriteQuery::execute (this=0x7f172684b950) at /home/kde-devel/kde/src/KDE/kdeutils/ark/kerfuffle/queries.cpp:83
#12 0x00007f172a159297 in ArchiveModel::qt_metacall (this=0x100fdd0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff3d16bd80)
    at /home/kde-devel/kde/build/KDE/kdeutils/ark/part/moc_archivemodel.cpp:91
#13 0x00007f17321beac0 in QMetaObject::activate (sender=0xfd3a60, from_signal_index=<value optimized out>, to_signal_index=26, argv=0xffffffffffffffff) at kernel/qobject.cpp:3028
#14 0x00007f1734d3a7cf in Kerfuffle::Job::userQuery (this=0x38c4, _t1=0x7f172684b950) at /home/kde-devel/kde/build/KDE/kdeutils/ark/kerfuffle/moc_jobs.cpp:87
#15 0x00007f1734d3a8aa in Kerfuffle::Job::qt_metacall (this=0xfd3a60, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x164bed0) at /home/kde-devel/kde/build/KDE/kdeutils/ark/kerfuffle/moc_jobs.cpp:73
#16 0x00007f17321b8c6e in QObject::event (this=0xfd3a60, e=0x17148a0) at kernel/qobject.cpp:1152
#17 0x00007f17326100ad in QApplicationPrivate::notify_helper (this=0xf18c30, receiver=0xfd3a60, e=0x17148a0) at kernel/qapplication.cpp:3803
#18 0x00007f173261740e in QApplication::notify (this=0x7fff3d16c810, receiver=0xfd3a60, e=0x17148a0) at kernel/qapplication.cpp:3768
#19 0x00007f1733f7122b in KApplication::notify (this=0x7fff3d16c810, receiver=0xfd3a60, event=0x17148a0) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:307
#20 0x00007f17321a9d90 in QCoreApplication::notifyInternal (this=0x7fff3d16c810, receiver=0xfd3a60, event=0x17148a0) at kernel/qcoreapplication.cpp:583
#21 0x00007f17321ad643 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0xede090) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:209
#22 0x00007f17321d0fa3 in postEventSourceDispatch (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:214
#23 0x00007f172d9a4aa2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#24 0x00007f172d9a821d in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#25 0x00007f172d9a83db in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#26 0x00007f17321d0cdf in QEventDispatcherGlib::processEvents (this=0xeecf90, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:319
#27 0x00007f1732697f7f in QGuiEventDispatcherGlib::processEvents (this=0x38c4, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:198
#28 0x00007f17321a89c2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1024902752}) at kernel/qeventloop.cpp:143
#29 0x00007f17321a8b55 in QEventLoop::exec (this=0x7fff3d16c6a0, flags={i = 1024902832}) at kernel/qeventloop.cpp:190
#30 0x00007f17321ad8f7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845
#31 0x000000000040c38f in main (argc=4, argv=0x7fff3d16d448) at /home/kde-devel/kde/src/KDE/kdeutils/ark/app/main.cpp:198


Comment 4 Dario Andres 2008-12-20 16:37:50 UTC
The backtrace in comment 3 may be related to bug 173979 (also same description)
Comment 5 Wang Hoi 2009-01-01 03:53:24 UTC
I failed to reproduce this bug and #173979.
I've tried the original and Comment #3.
I can't get a crash or big red cross.

But when i click suggest new name and overwriteall, the original file get overwrited, this bevaviour is wrong.

Harald Hvaal/Darío Andrés, would you please show me a detailed step to reproduce this bug.
Comment 6 Albert Astals Cid 2009-01-01 13:47:17 UTC
For comment #3. With current SVN i can tell that i don't get the big red cross on the first time i try it, but if without closing ark, i try to extract again and again the file over a directory that already contains it, at the end, i always end up getting it.
Comment 7 Raphael Kubo da Costa 2009-04-04 18:55:00 UTC
Can you please try again with a current trunk (specially with Qt 4.5)?
Comment 8 Albert Astals Cid 2009-04-05 23:55:56 UTC
Seems to be working now on trunk, there's a different bug though, i'm opening it in a moment ;-)