https://bugs.kde.org/show_bug.cgi?id=479888
Bug ID: 479888 Summary: Ark crashed and corrupted the archive while it was adding new files to it Classification: Applications Product: ark Version: 23.08.4 Platform: openSUSE OS: Linux Status: REPORTED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: elvis.angelac...@kde.org Reporter: coldsili...@disroot.org CC: rthoms...@gmail.com Target Milestone: --- Application: ark (23.08.4) Qt Version: 5.15.12 Frameworks Version: 5.113.0 Operating System: Linux 6.6.10-1-default x86_64 Windowing System: X11 Distribution: "openSUSE Tumbleweed" DrKonqi: 5.27.10 [CoredumpBackend] -- Information about the crash: I opened a .tar archive via dolphin, it contained another .zip archive into it. I first opened the .zip archive inside the tar archive and closed it. The zip archive was opened with ark as well. Then I clicked on "add files" button to add a .xml file to the .tar archive. Then ark crashed and I noticed that the original size of TAR archive reduced significantly. It didn't contain files inside it that were before opening The reporter is unsure if this crash is reproducible. -- Backtrace: Application: Ark (ark), signal: Segmentation fault PID: 12111 (ark) UID: 1000 (me) GID: 1000 (me) Signal: 11 (SEGV) Timestamp: Tue 2024-01-16 14:39:55 MSK (2min 34s ago) Command Line: /usr/bin/ark /run/media/me/75A1840E224E1515/Virtual.tar Executable: /usr/bin/ark Control Group: /user.slice/user-1000.slice/user@1000.service/app.slice/app-org.kde.ark-63e2edf9894143f180352b26db3c8561.scope Unit: user@1000.service User Unit: app-org.kde.ark-63e2edf9894143f180352b26db3c8561.scope Slice: user-1000.slice Owner UID: 1000 (me) Boot ID: 2ccfd64f3f394737af6107ffbd385569 Machine ID: f70df40a43c744989ac6918a4faa8819 Hostname: x230-opensuse Storage: /var/lib/systemd/coredump/core.ark.1000.2ccfd64f3f394737af6107ffbd385569.12111.1705405195000000.zst (present) Size on Disk: 5.6M Message: Process 12111 (ark) of user 1000 dumped core. Stack trace of thread 12111: #0 0x00007f72aac91dec __pthread_kill_implementation (libc.so.6 + 0x91dec) #1 0x00007f72aac3f0c6 raise (libc.so.6 + 0x3f0c6) #2 0x00007f72ace2bd9a _ZN6KCrash19defaultCrashHandlerEi (libKF5Crash.so.5 + 0x7d9a) #3 0x00007f72aac3f190 __restore_rt (libc.so.6 + 0x3f190) #4 0x00007f72ad24f392 _ZNK9Kerfuffle7Archive5Entry4findE11QStringView (libkerfuffle.so.23 + 0x66392) #5 0x00007f729ffe3cb3 n/a (arkpart.so + 0x38cb3) #6 0x00007f72ab725be2 n/a (libQt5Core.so.5 + 0x325be2) #7 0x00007f72ad21d442 _ZN9Kerfuffle3Job8newEntryEPNS_7Archive5EntryE (libkerfuffle.so.23 + 0x34442) #8 0x00007f72ad23017b _ZN9Kerfuffle3Job7onEntryEPNS_7Archive5EntryE (libkerfuffle.so.23 + 0x4717b) #9 0x00007f72ab7196f0 _ZN7QObject5eventEP6QEvent (libQt5Core.so.5 + 0x3196f0) #10 0x00007f72ac3a51ae _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt5Widgets.so.5 + 0x1a51ae) #11 0x00007f72ab6ed938 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt5Core.so.5 + 0x2ed938) #12 0x00007f72ab6f0f31 _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt5Core.so.5 + 0x2f0f31) #13 0x00007f72ab747063 n/a (libQt5Core.so.5 + 0x347063) #14 0x00007f72a9f13f30 n/a (libglib-2.0.so.0 + 0x5bf30) #15 0x00007f72a9f15b58 n/a (libglib-2.0.so.0 + 0x5db58) #16 0x00007f72a9f1620c g_main_context_iteration (libglib-2.0.so.0 + 0x5e20c) #17 0x00007f72ab746876 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5 + 0x346876) #18 0x00007f72ab6ec3cb _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2ec3cb) #19 0x00007f72ab6f4860 _ZN16QCoreApplication4execEv (libQt5Core.so.5 + 0x2f4860) #20 0x000055622cd2cf12 n/a (ark + 0x15f12) #21 0x00007f72aac281b0 __libc_start_call_main (libc.so.6 + 0x281b0) #22 0x00007f72aac28279 __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x28279) #23 0x000055622cd2eae5 n/a (ark + 0x17ae5) Stack trace of thread 12112: #0 0x00007f72aad09d9f __poll (libc.so.6 + 0x109d9f) #1 0x00007f72a9f15aff n/a (libglib-2.0.so.0 + 0x5daff) #2 0x00007f72a9f1620c g_main_context_iteration (libglib-2.0.so.0 + 0x5e20c) #3 0x00007f72ab74688e _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.so.5 + 0x34688e) #4 0x00007f72ab6ec3cb _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2ec3cb) #5 0x00007f72ab50304e _ZN7QThread4execEv (libQt5Core.so.5 + 0x10304e) #6 0x00007f72aaec7517 n/a (libQt5DBus.so.5 + 0x1a517) #7 0x00007f72ab50427d n/a (libQt5Core.so.5 + 0x10427d) #8 0x00007f72aac8ff44 start_thread (libc.so.6 + 0x8ff44) #9 0x00007f72aad184ec __clone3 (libc.so.6 + 0x1184ec) Stack trace of thread 12116: #0 0x00007f72aac8c4ee __futex_abstimed_wait_common (libc.so.6 + 0x8c4ee) #1 0x00007f72aac8f230 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x8f230) #2 0x00007f729ded1feb n/a (crocus_dri.so + 0xd1feb) #3 0x00007f729df1b8e7 n/a (crocus_dri.so + 0x11b8e7) #4 0x00007f72aac8ff44 start_thread (libc.so.6 + 0x8ff44) #5 0x00007f72aad184ec __clone3 (libc.so.6 + 0x1184ec) Stack trace of thread 12152: #0 0x00007f72aad14e31 pselect (libc.so.6 + 0x114e31) #1 0x00007f72a8f63b37 n/a (libusbmuxd-2.0.so.6 + 0x4b37) #2 0x00007f72a8f647a3 n/a (libusbmuxd-2.0.so.6 + 0x57a3) #3 0x00007f72aac8ff44 start_thread (libc.so.6 + 0x8ff44) #4 0x00007f72aad184ec __clone3 (libc.so.6 + 0x1184ec) Stack trace of thread 12114: #0 0x00007f72aac8c4ee __futex_abstimed_wait_common (libc.so.6 + 0x8c4ee) #1 0x00007f72aac8f230 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x8f230) #2 0x00007f729ded1feb n/a (crocus_dri.so + 0xd1feb) #3 0x00007f729df1b8e7 n/a (crocus_dri.so + 0x11b8e7) #4 0x00007f72aac8ff44 start_thread (libc.so.6 + 0x8ff44) #5 0x00007f72aad184ec __clone3 (libc.so.6 + 0x1184ec) ELF object binary architecture: AMD x86-64 [New LWP 12111] [New LWP 12112] [New LWP 12116] [New LWP 12152] [New LWP 12114] This GDB supports auto-downloading debuginfo from the following URLs: <https://debuginfod.opensuse.org/> Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal] Debuginfod has been disabled. To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `/usr/bin/ark /run/media/me/75A1840E224E1515/Virtual.tar'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f72aac91dec in __pthread_kill_implementation () from /lib64/libc.so.6 [Current thread is 1 (Thread 0x7f72a8633a00 (LWP 12111))] [Current thread is 1 (Thread 0x7f72a8633a00 (LWP 12111))] Thread 5 (Thread 0x7f729dcbe6c0 (LWP 12114)): #0 0x00007f72aac8c4ee in __futex_abstimed_wait_common () at /lib64/libc.so.6 #1 0x00007f72aac8f230 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libc.so.6 #2 0x00007f729ded1feb in () at /usr/lib64/dri/crocus_dri.so #3 0x00007f729df1b8e7 in () at /usr/lib64/dri/crocus_dri.so #4 0x00007f72aac8ff44 in start_thread () at /lib64/libc.so.6 #5 0x00007f72aad184ec in clone3 () at /lib64/libc.so.6 Thread 4 (Thread 0x7f7288bfb6c0 (LWP 12152)): #0 0x00007f72aad14e31 in pselect () at /lib64/libc.so.6 #1 0x00007f72a8f63b37 in () at /lib64/libusbmuxd-2.0.so.6 #2 0x00007f72a8f647a3 in () at /lib64/libusbmuxd-2.0.so.6 #3 0x00007f72aac8ff44 in start_thread () at /lib64/libc.so.6 #4 0x00007f72aad184ec in clone3 () at /lib64/libc.so.6 Thread 3 (Thread 0x7f729d4bd6c0 (LWP 12116)): #0 0x00007f72aac8c4ee in __futex_abstimed_wait_common () at /lib64/libc.so.6 #1 0x00007f72aac8f230 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libc.so.6 #2 0x00007f729ded1feb in () at /usr/lib64/dri/crocus_dri.so #3 0x00007f729df1b8e7 in () at /usr/lib64/dri/crocus_dri.so #4 0x00007f72aac8ff44 in start_thread () at /lib64/libc.so.6 #5 0x00007f72aad184ec in clone3 () at /lib64/libc.so.6 Thread 2 (Thread 0x7f72a60836c0 (LWP 12112)): #0 0x00007f72aad09d9f in poll () at /lib64/libc.so.6 #1 0x00007f72a9f15aff in () at /lib64/libglib-2.0.so.0 #2 0x00007f72a9f1620c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #3 0x00007f72ab74688e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f72a0000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #4 0x00007f72ab6ec3cb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f72a6082b50, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #5 0x00007f72ab50304e in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #6 0x00007f72aaec7517 in () at /lib64/libQt5DBus.so.5 #7 0x00007f72ab50427d in operator() (__closure=<optimized out>) at thread/qthread_unix.cpp:350 #8 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > (t=<optimized out>) at thread/qthread_unix.cpp:287 #9 QThreadPrivate::start(void*) (arg=0x7f72aaf40060) at thread/qthread_unix.cpp:310 #10 0x00007f72aac8ff44 in start_thread () at /lib64/libc.so.6 #11 0x00007f72aad184ec in clone3 () at /lib64/libc.so.6 Thread 1 (Thread 0x7f72a8633a00 (LWP 12111)): [KCrash Handler] #4 QArrayData::data() const (this=0x310066) at /usr/include/qt5/QtCore/qarraydata.h:68 #5 QTypedArrayData<Kerfuffle::Archive::Entry*>::data() const (this=0x310066) at /usr/include/qt5/QtCore/qarraydata.h:209 #6 QTypedArrayData<Kerfuffle::Archive::Entry*>::constBegin(QTypedArrayData<Kerfuffle::Archive::Entry*>::const_iterator) const (this=0x310066) at /usr/include/qt5/QtCore/qarraydata.h:215 #7 QVector<Kerfuffle::Archive::Entry*>::begin(QTypedArrayData<Kerfuffle::Archive::Entry*>::const_iterator) const (this=0x55622e4ac9f0) at /usr/include/qt5/QtCore/qvector.h:220 #8 Kerfuffle::Archive::Entry::find(QStringView) const (this=this@entry=0x55622e4ac9d0, name=...) at /usr/src/debug/ark-23.08.4/kerfuffle/archiveentry.cpp:182 #9 0x00007f729ffe3cb3 in ArchiveModel::newEntry(Kerfuffle::Archive::Entry*, ArchiveModel::InsertBehaviour) (this=<optimized out>, receivedEntry=<optimized out>, behaviour=<optimized out>) at /usr/include/qt5/QtCore/qstringview.h:162 #10 0x00007f72ab725be2 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffdef88e320, r=0x55622df45fe0, this=0x55622eaa3d90) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #11 doActivate<false>(QObject*, int, void**) (sender=0x55622ea79870, signal_index=24, argv=0x7ffdef88e320) at kernel/qobject.cpp:3925 #12 0x00007f72ab71e84f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7f72ad2723a0, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffdef88e320) at kernel/qobject.cpp:3985 #13 0x00007f72ad21d442 in Kerfuffle::Job::newEntry(Kerfuffle::Archive::Entry*) (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/ark-23.08.4/build/kerfuffle/kerfuffle_autogen/EWIEGA46WW/moc_jobs.cpp:235 #14 0x00007f72ad23017b in Kerfuffle::Job::onEntry(Kerfuffle::Archive::Entry*) (this=0x55622ea79870, entry=0x7f724803b550) at /usr/src/debug/ark-23.08.4/kerfuffle/jobs.cpp:173 #15 0x00007f72ab7196f0 in QObject::event(QEvent*) (this=0x55622ea79870, e=0x7f724803b6b0) at kernel/qobject.cpp:1347 #16 0x00007f72ac3a51ae in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55622ea79870, e=0x7f724803b6b0) at kernel/qapplication.cpp:3640 #17 0x00007f72ab6ed938 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55622ea79870, event=0x7f724803b6b0) at kernel/qcoreapplication.cpp:1064 #18 0x00007f72ab6edafe in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462 #19 0x00007f72ab6f0f31 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x55622dc22030) at kernel/qcoreapplication.cpp:1821 #20 0x00007f72ab6f1478 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=<optimized out>, event_type=<optimized out>) at kernel/qcoreapplication.cpp:1680 #21 0x00007f72ab747063 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x55622dd1ac40) at kernel/qeventdispatcher_glib.cpp:277 #22 0x00007f72a9f13f30 in () at /lib64/libglib-2.0.so.0 #23 0x00007f72a9f15b58 in () at /lib64/libglib-2.0.so.0 #24 0x00007f72a9f1620c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #25 0x00007f72ab746876 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55622dd1d9f0, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #26 0x00007f72ab6ec3cb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffdef88e780, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #27 0x00007f72ab6f4860 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #28 0x000055622cd2cf12 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/ark-23.08.4/app/main.cpp:341 Reported using DrKonqi -- You are receiving this mail because: You are watching all bug changes.