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
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.
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.
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
The backtrace in comment 3 may be related to bug 173979 (also same description)
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.
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.
Can you please try again with a current trunk (specially with Qt 4.5)?
Seems to be working now on trunk, there's a different bug though, i'm opening it in a moment ;-)