Bug 377361 - Moving a file to root-owned NTFS drive crashes dolphin
Summary: Moving a file to root-owned NTFS drive crashes dolphin
Status: RESOLVED DUPLICATE of bug 364039
Alias: None
Product: dolphin
Classification: Applications
Component: general (show other bugs)
Version: 16.08.2
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Dolphin Bug Assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2017-03-08 02:13 UTC by jingyu9575
Modified: 2017-03-08 10:56 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description jingyu9575 2017-03-08 02:13:40 UTC
Application: dolphin (16.08.2)

Qt Version: 5.6.1
Frameworks Version: 5.26.0
Operating System: Linux 4.4.49-16-default x86_64
Distribution: "openSUSE Leap 42.2"

-- Information about the crash:
- What I was doing when the application crashed:

An NTFS drive is mounted on /mnt/E with fstab parameters:

    users,uid=root,gid=users,fmask=111,dmask=000,locale=zh_CN.UTF-8

therefore the files and directories are world writable.

When I move (not copy) a file from desktop or home to /mnt/E, the file is successfully written, but a dialog says (translated from zh_CN) "Access denied for /mnt/E/filename", with buttons "Retry", "Cancel", and "Skip", "Auto Skip" in case of multiple files.

If I click "Cancel" for one file, the dialog will disappear and the file is moved. However if I click "Retry", or click "Skip" for multiple files, dolphin will crash and may leave the destination file corrupted. 

Modifying the fstab parameter "uid=root" to "uid=myusername" can workaround the problem, but only useful for a single user.

The crash can be reproduced every time.

-- Backtrace:
Application: Dolphin (dolphin), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fd1e90c2900 (LWP 2936))]

Thread 5 (Thread 0x7fd13d372700 (LWP 2940)):
#0  0x00007fd1e897949d in poll () at /lib64/libc.so.6
#1  0x00007fd1dd766314 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fd1dd76642c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fd1e2c5432b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007fd1e2c01fdb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5  0x00007fd1e2a3cf1a in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6  0x00007fd1e2a419e9 in  () at /usr/lib64/libQt5Core.so.5
#7  0x00007fd1de2ed734 in start_thread () at /lib64/libpthread.so.0
#8  0x00007fd1e8981d3d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7fd1bf002700 (LWP 2939)):
#0  0x00007fd1de2f20af in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fd1bf17693b in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007fd1bf176969 in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007fd1de2ed734 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fd1e8981d3d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fd1cbbcd700 (LWP 2938)):
#0  0x00007fd1e897949d in poll () at /lib64/libc.so.6
#1  0x00007fd1dd766314 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fd1dd76642c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fd1e2c5432b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007fd1e2c01fdb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#5  0x00007fd1e2a3cf1a in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#6  0x00007fd1e30681d5 in  () at /usr/lib64/libQt5DBus.so.5
#7  0x00007fd1e2a419e9 in  () at /usr/lib64/libQt5Core.so.5
#8  0x00007fd1de2ed734 in start_thread () at /lib64/libpthread.so.0
#9  0x00007fd1e8981d3d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fd1d16c7700 (LWP 2937)):
#0  0x00007fd1e897949d in poll () at /lib64/libc.so.6
#1  0x00007fd1db7203e2 in  () at /usr/lib64/libxcb.so.1
#2  0x00007fd1db721fcf in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007fd1d3c21839 in  () at /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007fd1e2a419e9 in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007fd1de2ed734 in start_thread () at /lib64/libpthread.so.0
#6  0x00007fd1e8981d3d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fd1e90c2900 (LWP 2936)):
[KCrash Handler]
#6  0x00007fd1e2c35847 in QObjectPrivate::setParent_helper(QObject*) () at /usr/lib64/libQt5Core.so.5
#7  0x00007fd1e47af08f in KCompositeJob::removeSubjob(KJob*) () at /usr/lib64/libKF5CoreAddons.so.5
#8  0x00007fd1e6a28625 in  () at /usr/lib64/libKF5KIOCore.so.5
#9  0x00007fd1e6a28df7 in  () at /usr/lib64/libKF5KIOCore.so.5
#10 0x00007fd1e6a2ae8a in KIO::CopyJob::slotResult(KJob*) () at /usr/lib64/libKF5KIOCore.so.5
#11 0x00007fd1e2c2dbb1 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#12 0x00007fd1e47afa62 in KJob::result(KJob*, KJob::QPrivateSignal) () at /usr/lib64/libKF5CoreAddons.so.5
#13 0x00007fd1e47b078f in KJob::finishJob(bool) () at /usr/lib64/libKF5CoreAddons.so.5
#14 0x00007fd1e6a5dadc in KIO::FileCopyJob::slotResult(KJob*) () at /usr/lib64/libKF5KIOCore.so.5
#15 0x00007fd1e6a5ee60 in  () at /usr/lib64/libKF5KIOCore.so.5
#16 0x00007fd1e2c2dbb1 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#17 0x00007fd1e47afa62 in KJob::result(KJob*, KJob::QPrivateSignal) () at /usr/lib64/libKF5CoreAddons.so.5
#18 0x00007fd1e47b078f in KJob::finishJob(bool) () at /usr/lib64/libKF5CoreAddons.so.5
#19 0x00007fd1e6a66fb2 in KIO::SimpleJob::slotFinished() () at /usr/lib64/libKF5KIOCore.so.5
#20 0x00007fd1e6a65b7b in KIO::SimpleJob::slotError(int, QString const&) () at /usr/lib64/libKF5KIOCore.so.5
#21 0x00007fd1e2c2dbb1 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#22 0x00007fd1e6a49796 in KIO::SlaveInterface::error(int, QString const&) () at /usr/lib64/libKF5KIOCore.so.5
#23 0x00007fd1e6a4c5b7 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () at /usr/lib64/libKF5KIOCore.so.5
#24 0x00007fd1e6a49ba8 in KIO::SlaveInterface::dispatch() () at /usr/lib64/libKF5KIOCore.so.5
#25 0x00007fd1e6a4e00e in KIO::Slave::gotInput() () at /usr/lib64/libKF5KIOCore.so.5
#26 0x00007fd1e6acc255 in  () at /usr/lib64/libKF5KIOCore.so.5
#27 0x00007fd1e2c2dbb1 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#28 0x00007fd1e69facf7 in  () at /usr/lib64/libKF5KIOCore.so.5
#29 0x00007fd1e2c2f166 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#30 0x00007fd1e3b8be3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#31 0x00007fd1e3b9049a in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#32 0x00007fd1e2c03fc5 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#33 0x00007fd1e2c05daa in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt5Core.so.5
#34 0x00007fd1e2c54c83 in  () at /usr/lib64/libQt5Core.so.5
#35 0x00007fd1dd766134 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#36 0x00007fd1dd766388 in  () at /usr/lib64/libglib-2.0.so.0
#37 0x00007fd1dd76642c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#38 0x00007fd1e2c5430c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#39 0x00007fd1e2c01fdb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#40 0x00007fd1e2c09ec6 in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#41 0x00007fd1e8c9d96a in kdemain () at /usr/lib64/libkdeinit5_dolphin.so
#42 0x00007fd1e88b86e5 in __libc_start_main () at /lib64/libc.so.6
#43 0x0000000000400789 in _start ()

Reported using DrKonqi
Comment 1 Elvis Angelaccio 2017-03-08 10:56:34 UTC

*** This bug has been marked as a duplicate of bug 364039 ***