https://bugs.kde.org/show_bug.cgi?id=515511

--- Comment #1 from Arsenij <[email protected]> ---
(In reply to Arsenij from comment #0)
> Application: kioworker (6.22.1)
> 
> ApplicationNotResponding [ANR]: false
> Qt Version: 6.10.1
> Frameworks Version: 6.22.0
> Operating System: Linux 6.14.0-37-generic x86_64
> Windowing System: Wayland
> Distribution: KDE neon User Edition
> DrKonqi: 6.5.5 [CoredumpBackend]
> 
> -- Information about the crash:
> Unpacked the archive partially (via Ark), canceled the unpack, tried to
> delete the folder, crashed every time as I tried. I experienced same
> behavior before, and both of times when files are created with size, less
> than full (partial created files that grow in size), both ways to fix - as I
> remember or restart the Dolphin, or restart the whole system.
> 
> (sorry but I was curious and) Claude concluded that it's handler of the file
> size (weird since how I can delete the big files then? nvm, tested and I
> still can't delete big files before reboot, nor 6+ GB file, nor folder that
> contains it, but can delete folder with smaller file), cite:
> The crash occurred in KDE's Trash system when trying to move a file to
> trash. Specifically:
> The problem (line #16-18):
> qCheckedFPConversionToInteger<int, double>(value=6704756736.5)
> qRound(d=6704756736)
> TrashImpl::adaptTrashSize
> Root cause: The trash implementation tried to convert a very large file size
> (6704756736.5 bytes ≈ 6.7 GB) from a double to an int, which caused an
> integer overflow.
> 
> int maximum value is ~2.1 billion (2,147,483,647)
> The file size was 6.7 billion bytes
> This triggered Qt's assertion check and crashed the program
> 
> What was happening:
> 
> You were moving a file to trash (line #20: TrashImpl::moveToTrash)
> The system was trying to update the trash size metadata (line #18:
> adaptTrashSize)
> It tried to round a file size that was too large to fit in a 32-bit integer
> Qt detected the overflow and aborted to prevent corruption
> 
> The crash can be reproduced every time.
> 
> -- Backtrace:
> Application: kioworker (kioworker), signal: Aborted
> 
> [New LWP 161780]
> [New LWP 161781]
> 
> This GDB supports auto-downloading debuginfo from the following URLs:
>   <https://debuginfod.neon.kde.org/>
>   <https://debuginfod.ubuntu.com/>
> 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 "/lib/x86_64-linux-gnu/libthread_db.so.1".
> Core was generated by `/lib/x86_64-linux-gnu/libexec/kf6/kioworker
> /usr/lib/x86_64-linux-gnu/qt6/plugi'.
> Program terminated with signal SIGABRT, Aborted.
> #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized
> out>) at ./nptl/pthread_kill.c:44
> 
> warning: 44   ./nptl/pthread_kill.c: No such file or directory
> [Current thread is 1 (Thread 0x6ffdf19e33c0 (LWP 161780))]
> add symbol table from file "/lib/x86_64-linux-gnu/libc.so.6"
> add symbol table from file "/lib/x86_64-linux-gnu/libKF6Crash.so.6"
> add symbol table from file "/lib/x86_64-linux-gnu/libQt6Core.so.6"
> add symbol table from file
> "/usr/lib/x86_64-linux-gnu/qt6/plugins/kf6/kio/kio_trash.so"
> add symbol table from file "/lib/x86_64-linux-gnu/libKF6KIOCore.so.6"
> add symbol table from file "/usr/lib/x86_64-linux-gnu/libexec/kf6/kioworker"
> [Current thread is 1 (Thread 0x6ffdf19e33c0 (LWP 161780))]
> 
> Thread 2 (Thread 0x6ffdf11896c0 (LWP 161781)):
> #0  0x00006ffdf671b4fd in __GI___poll (fds=0x6ffdec0013b0, nfds=2,
> timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
> #1  0x00006ffdf64b26be in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
> #2  0xffffffff00000001 in ?? ()
> #3  0x00006ffdf11886d4 in ?? ()
> #4  0xffffffff7fffffff in ?? ()
> #5  0xf6e3e118edd9fd00 in ?? ()
> #6  0x00006ffdf1188710 in ?? ()
> #7  0x00006ffdec000c90 in ?? ()
> #8  0x0000000000000001 in ?? ()
> #9  0x00006ffdec000b90 in ?? ()
> #10 0x0000000000000000 in ?? ()
> 
> Thread 1 (Thread 0x6ffdf19e33c0 (LWP 161780)):
> [KCrash Handler]
> #6  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized
> out>) at ./nptl/pthread_kill.c:44
> #7  __pthread_kill_internal (signo=6, threadid=<optimized out>) at
> ./nptl/pthread_kill.c:78
> #8  __GI___pthread_kill (threadid=<optimized out>, signo=6) at
> ./nptl/pthread_kill.c:89
> #9  0x00006ffdf664527e in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
> #10 0x00006ffdf66288ff in __GI_abort () at ./stdlib/abort.c:79
> #11 0x00006ffdf7332891 in qAbort () at
> /usr/src/qt6-base-6.10.1-0zneon+24.04+noble+release+build145/src/corelib/
> global/qassert.cpp:46
> #12 qt_maybe_message_fatal<QString&> (message=..., context=...,
> msgType=QtFatalMsg) at
> /usr/src/qt6-base-6.10.1-0zneon+24.04+noble+release+build145/src/corelib/
> global/qlogging.cpp:2166
> #13 qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef
> __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg,
> context=..., msg=msg@entry=0x6ffdf704e8e8 "ASSERT: \"%s\" in file %s, line
> %d", ap=ap@entry=0x7ffcf9d8a258) at
> /usr/src/qt6-base-6.10.1-0zneon+24.04+noble+release+build145/src/corelib/
> global/qlogging.cpp:412
> #14 0x00006ffdf7333653 in QMessageLogger::fatal (this=<optimized out>,
> msg=0x6ffdf704e8e8 "ASSERT: \"%s\" in file %s, line %d") at
> /usr/src/qt6-base-6.10.1-0zneon+24.04+noble+release+build145/src/corelib/
> global/qlogging.cpp:901
> #15 0x00006ffdf7321020 in qt_assert (assertion=<optimized out>,
> file=<optimized out>, line=<optimized out>) at
> /usr/src/qt6-base-6.10.1-0zneon+24.04+noble+release+build145/src/corelib/
> global/qassert.cpp:113
> #16 0x00006ffdf13d2932 in QtPrivate::qCheckedFPConversionToInteger<int,
> double, true, true> (value=6704756736.5) at
> /usr/include/x86_64-linux-gnu/qt6/QtCore/qnumeric.h:516
> #17 0x00006ffdf13cfb99 in qRound (d=6704756736) at
> /usr/include/x86_64-linux-gnu/qt6/QtCore/qnumeric.h:565
> #18 0x00006ffdf13cf1ad in TrashImpl::adaptTrashSize (this=0x7ffcf9d8aca0,
> origPath=..., trashId=0) at
> /workspace/build/src/kioworkers/trash/trashimpl.cpp:1331
> #19 0x00006ffdf13c99d5 in TrashImpl::moveToTrash (this=0x7ffcf9d8aca0,
> origPath=..., trashId=0, fileId=...) at
> /workspace/build/src/kioworkers/trash/trashimpl.cpp:393
> #20 0x00006ffdf13bbd1a in TrashProtocol::copyOrMoveToTrash
> (this=0x7ffcf9d8ac80, src=..., dest=..., action=TrashProtocol::Move) at
> /workspace/build/src/kioworkers/trash/kio_trash.cpp:270
> #21 0x00006ffdf13bad6a in TrashProtocol::rename (this=0x7ffcf9d8ac80,
> oldURL=..., newURL=..., flags=...) at
> /workspace/build/src/kioworkers/trash/kio_trash.cpp:186
> #22 0x00006ffdf7705f98 in KIO::WorkerSlaveBaseBridge::rename
> (this=0x64bb535628a0, src=..., dest=..., flags=...) at
> /workspace/build/src/core/workerbase_p.h:131
> #23 0x00006ffdf76fc8d6 in KIO::SlaveBase::dispatch (this=0x64bb535628a0,
> command=73, data=...) at /workspace/build/src/core/slavebase.cpp:1199
> #24 0x00006ffdf76f7211 in KIO::SlaveBase::dispatchLoop (this=0x64bb535628a0)
> at /workspace/build/src/core/slavebase.cpp:330
> #25 0x00006ffdf770383a in KIO::WorkerBase::dispatchLoop
> (this=0x7ffcf9d8ac90) at /workspace/build/src/core/workerbase.cpp:27
> #26 0x00006ffdf13b9a5b in kdemain (argc=4, argv=0x7ffcf9d8ae78) at
> /workspace/build/src/kioworkers/trash/kio_trash.cpp:51
> #27 0x000064bb4e79499b in main (argc=5, argv=0x7ffcf9d8afe8) at
> /workspace/build/src/kioworker/kioworker.cpp:144
> 
> Reported using DrKonqi

Additionals:
After reboot I still can't delete them, and my free space on the drive is ~3GB,
that's more than a file size, so for me it's unknown "why"

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to