https://bugs.kde.org/show_bug.cgi?id=463796
Bug ID: 463796
Summary: KIO::copy Segmentation fault
Classification: Frameworks and Libraries
Product: frameworks-kio
Version: 5.101.0
Platform: OpenBSD
OS: OpenBSD
Status: REPORTED
Severity: critical
Priority: NOR
Component: general
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
For a long time there has been a really annoying crash in all KDE applications.
For example:
You will just copy/paste a file in dolphin file browser.
“Save as” in Okular - Universal Document Viewer.
I found out it's in FileProtocol::copy / KIO::copy and I wrote a simple test
to reproduce the crash:
```
KIOFileCopy::KIOFileCopy()
{
QList<QUrl> sourceUrl = {
QUrl::fromLocalFile(QLatin1String("/home/rsadowski/src/kio_file_copy/build/bin/fileA.txt"))
};
const QUrl destinationUrl =
QUrl::fromLocalFile(QLatin1String("/home/rsadowski/src/kio_file_copy/build/bin/fileB.txt"));
KIO::CopyJob* job = KIO::copy(sourceUrl, destinationUrl, KIO::DefaultFlags
);
}
```
Debug output:
```
# ./kio_file_copy
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-rsadowski'
kf.crash: Could not find drkonqi in search paths:
("/home/rsadowski/src/kio_file_copy/build/bin", "/usr/local/lib/qt5/libexec",
"/usr/local/libexec")
kf.kio.core.copyjob:
(QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt"))
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
kf.kio.widgets: Failed to check which JobView API is supported "The name
org.kde.kuiserver was not provided by any .service files"
kf.coreaddons: Checking for plugins in
("/home/rsadowski/src/kio_file_copy/build/bin/kf5/kio",
"/usr/local/lib/qt5/plugins/kf5/kio")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_file.so" supports
protocols ("file")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_ftp.so" supports protocols
("ftp")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_ghelp.so" supports
protocols ("ghelp")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_help.so" supports
protocols ("help")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_http.so" supports
protocols ("http", "https", "webdav", "webdavs")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_remote.so" supports
protocols ("remote")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_trash.so" supports
protocols ("trash")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/ldap.so" supports protocols
("ldap", "ldaps")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/akonadi.so" supports protocols
("akonadi")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_msits.so" supports
protocols ("ms-its")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/baloosearch.so" supports
protocols ("baloosearch")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/tags.so" supports protocols
("tags")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/timeline.so" supports
protocols ("timeline")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/about.so" supports protocols
("about")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/activities.so" supports
protocols ("activities")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/archive.so" supports protocols
("ar", "sevenz", "tar", "zip")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/bookmarks.so" supports
protocols ("bookmarks")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/filter.so" supports protocols
("bzip", "bzip2", "gzip", "lzma", "xz", "zstd")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/fish.so" supports protocols
("fish")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/info.so" supports protocols
("info")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/kio_filenamesearch.so"
supports protocols ("filenamesearch")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/man.so" supports protocols
("man")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/mtp.so" supports protocols
("mtp")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/recentdocuments.so" supports
protocols ("recentdocuments")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/recentlyused.so" supports
protocols ("recentlyused")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/sftp.so" supports protocols
("sftp")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/smb.so" supports protocols
("cifs", "smb")
kf.kio.core: "/usr/local/lib/qt5/plugins/kf5/kio/thumbnail.so" supports
protocols ("thumbnail")
kf.kio.core.copyjob: CopyJob: stating the dest
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-rsadowski'
kf.kio.core: 0xad7a97c3040 Creating threaded worker
kf.kio.core.copyjob: d->state= 1
kf.kio.core.copyjob:
kf.kio.core.copyjob: dest is dir: false
kf.kio.core.copyjob: KIO::stat on
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt")
kf.kio.core.copyjob: d->state= 1
kf.kio.core.copyjob:
kf.kio.core.copyjob: fileName= "fileA.txt" url=
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt")
kf.kio.core.copyjob: uSource=
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt") uDest(1)=
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
kf.kio.core.copyjob: uDest(2)=
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
kf.kio.core.copyjob:
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt") ->
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
kf.kio.core.copyjob: Source is a file (or a symlink), or we are linking -> no
recursive listing
kf.kio.core.copyjob: Setting m_dest to
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
kf.kio.core.copyjob: Stating finished. To copy: 7 , available: 30130962432
kf.kio.core.copyjob:
kf.kio.core.copyjob: preparing to copy
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt") 7
30130962432
kf.kio.core.copyjob: copying
"/home/rsadowski/src/kio_file_copy/build/bin/fileB.txt"
kf.kio.core.copyjob: Copying
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileA.txt") to
QUrl("file:///home/rsadowski/src/kio_file_copy/build/bin/fileB.txt")
zsh: segmentation fault (core dumped) ./kio_file_copy
```
The trace:
```
Program terminated with signal SIGSEGV, Segmentation fault.
#0 FileProtocol::copy (this=0xad760fd3980, srcUrl=..., destUrl=..., _mode=420,
_flags=...) at
/usr/ports/pobj/kio-5.101.0/kio-5.101.0/src/ioslaves/file/file_unix.cpp:678
678 if (privilegeOperationUnitTestMode()) {
[Current thread is 1 (process 431561)]
(gdb) bt
#0 FileProtocol::copy (this=0xad760fd3980, srcUrl=..., destUrl=..., _mode=420,
_flags=...) at
/usr/ports/pobj/kio-5.101.0/kio-5.101.0/src/ioslaves/file/file_unix.cpp:678
#1 0x00000ad7d832dd53 in KIO::SlaveBase::dispatch (this=0xad760fd3990,
command=<optimized out>, data=...) at
/usr/ports/pobj/kio-5.101.0/kio-5.101.0/src/core/slavebase.cpp:1364
#2 0x00000ad7d8327d05 in KIO::SlaveBase::dispatchLoop (this=0xad760fd3990) at
/usr/ports/pobj/kio-5.101.0/kio-5.101.0/src/core/slavebase.cpp:339
#3 0x00000ad7d83bf803 in KIO::WorkerThread::run (this=0xad79475cf40) at
/usr/ports/pobj/kio-5.101.0/kio-5.101.0/src/core/workerthread.cpp:62
#4 0x00000ad75255e28c in QThreadPrivate::start(void*) () from
/usr/local/lib/qt5/./libQt5Core.so.4.0
#5 0x00000ad8015b9a11 in _rthread_start (v=<optimized out>) at
/usr/src/lib/librthread/rthread.c:96
#6 0x00000ad81d6f9ada in __tfork_thread () at
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
```
Unfortunately I don't make any progress when debugging and would appreciate any
ideas.
SOFTWARE/OS VERSIONS
OpenBSD
KDE Frameworks Version: 5.101.0
Qt Version: Qt 5.15.7
ADDITIONAL INFORMATION
--
You are receiving this mail because:
You are watching all bug changes.