Bug 445515 - Gwenview crashes when the opened image is deleted/moved
Summary: Gwenview crashes when the opened image is deleted/moved
Status: RESOLVED WORKSFORME
Alias: None
Product: gwenview
Classification: Applications
Component: general (other bugs)
Version First Reported In: 21.08.3
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2021-11-15 09:02 UTC by quinten.zee
Modified: 2025-09-18 03:48 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description quinten.zee 2021-11-15 09:02:00 UTC
Application: gwenview (21.08.3)

Qt Version: 5.15.3
Frameworks Version: 5.87.0
Operating System: Linux 5.11.0-40-generic x86_64
Windowing System: Wayland
Distribution: KDE neon User - Plasma 25th Anniversary Edition
DrKonqi: 5.23.3 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
I opened a screenshot in gwenview, then moved it to another folder by dragging it from the gwenview window to the other folder. 
Moving works. For half a second, the next image in that folder is displayed, as expected. Then gwenview crashes. 
I tested this four more times and it happens every time. 
I am on wayland if that's relevant.

The crash can be reproduced every time.

-- Backtrace:
Application: Gwenview (gwenview), signal: Segmentation fault

[New LWP 139313]
[New LWP 139314]
[New LWP 139315]
[New LWP 139316]
[New LWP 139317]
[New LWP 139318]
[New LWP 139319]
[New LWP 139326]
[New LWP 139327]
[New LWP 139328]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f1b38b65aff in __GI___poll (fds=0x7ffcaf79bc78, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
__preamble__
[Current thread is 1 (Thread 0x7f1b32dd0c40 (LWP 139312))]

Thread 11 (Thread 0x7f1b0e048700 (LWP 139328)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7f1b0e0478d0, clockid=<optimized out>, expected=0, futex_word=0x55f4dba1e344) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7f1b0e0478d0, clockid=<optimized out>, mutex=0x55f4dba1e2f0, cond=0x55f4dba1e318) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55f4dba1e318, mutex=0x55f4dba1e2f0, abstime=0x7f1b0e0478d0) at pthread_cond_wait.c:656
#3  0x00007f1b38ef8558 in QWaitConditionPrivate::wait_relative (this=0x55f4dba1e2f0, deadline=...) at thread/qwaitcondition_unix.cpp:136
#4  QWaitConditionPrivate::wait (deadline=..., this=0x55f4dba1e2f0) at thread/qwaitcondition_unix.cpp:144
#5  QWaitCondition::wait (this=this@entry=0x55f4db616dc0, mutex=mutex@entry=0x55f4dabf8e18, deadline=...) at thread/qwaitcondition_unix.cpp:225
#6  0x00007f1b38ef5a61 in QThreadPoolThread::run (this=0x55f4db616db0) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:275
#7  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x55f4db616db0) at thread/qthread_unix.cpp:329
#8  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7f1b0f1fe700 (LWP 139327)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7f1b0f1fd8d0, clockid=<optimized out>, expected=0, futex_word=0x55f4dba1f4c0) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7f1b0f1fd8d0, clockid=<optimized out>, mutex=0x55f4dba1f470, cond=0x55f4dba1f498) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55f4dba1f498, mutex=0x55f4dba1f470, abstime=0x7f1b0f1fd8d0) at pthread_cond_wait.c:656
#3  0x00007f1b38ef8558 in QWaitConditionPrivate::wait_relative (this=0x55f4dba1f470, deadline=...) at thread/qwaitcondition_unix.cpp:136
#4  QWaitConditionPrivate::wait (deadline=..., this=0x55f4dba1f470) at thread/qwaitcondition_unix.cpp:144
#5  QWaitCondition::wait (this=this@entry=0x55f4dba1b300, mutex=mutex@entry=0x55f4dabf8e18, deadline=...) at thread/qwaitcondition_unix.cpp:225
#6  0x00007f1b38ef5a61 in QThreadPoolThread::run (this=0x55f4dba1b2f0) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:275
#7  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x55f4dba1b2f0) at thread/qthread_unix.cpp:329
#8  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f1b0f9ff700 (LWP 139326)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7f1b0f9fe8d0, clockid=<optimized out>, expected=0, futex_word=0x55f4dba1f310) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7f1b0f9fe8d0, clockid=<optimized out>, mutex=0x55f4dba1f2c0, cond=0x55f4dba1f2e8) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55f4dba1f2e8, mutex=0x55f4dba1f2c0, abstime=0x7f1b0f9fe8d0) at pthread_cond_wait.c:656
#3  0x00007f1b38ef8558 in QWaitConditionPrivate::wait_relative (this=0x55f4dba1f2c0, deadline=...) at thread/qwaitcondition_unix.cpp:136
#4  QWaitConditionPrivate::wait (deadline=..., this=0x55f4dba1f2c0) at thread/qwaitcondition_unix.cpp:144
#5  QWaitCondition::wait (this=this@entry=0x55f4db755f20, mutex=mutex@entry=0x55f4dabf8e18, deadline=...) at thread/qwaitcondition_unix.cpp:225
#6  0x00007f1b38ef5a61 in QThreadPoolThread::run (this=0x55f4db755f10) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:275
#7  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x55f4db755f10) at thread/qthread_unix.cpp:329
#8  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f1b16849700 (LWP 139319)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55f4daefb068) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55f4daefb018, cond=0x55f4daefb040) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55f4daefb040, mutex=0x55f4daefb018) at pthread_cond_wait.c:638
#3  0x00007f1b295d0e7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f1b295d0a7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f1b0e849700 (LWP 139318)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55f4daefb068) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55f4daefb018, cond=0x55f4daefb040) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55f4daefb040, mutex=0x55f4daefb018) at pthread_cond_wait.c:638
#3  0x00007f1b295d0e7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f1b295d0a7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f1b28a21700 (LWP 139317)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55f4daefb068) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55f4daefb018, cond=0x55f4daefb040) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55f4daefb040, mutex=0x55f4daefb018) at pthread_cond_wait.c:638
#3  0x00007f1b295d0e7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f1b295d0a7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f1b29222700 (LWP 139316)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55f4daefb068) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55f4daefb018, cond=0x55f4daefb040) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55f4daefb040, mutex=0x55f4daefb018) at pthread_cond_wait.c:638
#3  0x00007f1b295d0e7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#4  0x00007f1b295d0a7b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#5  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f1b2b7fe700 (LWP 139315)):
#0  futex_abstimed_wait_cancelable (private=<optimized out>, abstime=0x7f1b2b7fd8d0, clockid=<optimized out>, expected=0, futex_word=0x55f4daf10314) at ../sysdeps/nptl/futex-internal.h:320
#1  __pthread_cond_wait_common (abstime=0x7f1b2b7fd8d0, clockid=<optimized out>, mutex=0x55f4daf102c0, cond=0x55f4daf102e8) at pthread_cond_wait.c:520
#2  __pthread_cond_timedwait (cond=0x55f4daf102e8, mutex=0x55f4daf102c0, abstime=0x7f1b2b7fd8d0) at pthread_cond_wait.c:656
#3  0x00007f1b38ef8558 in QWaitConditionPrivate::wait_relative (this=0x55f4daf102c0, deadline=...) at thread/qwaitcondition_unix.cpp:136
#4  QWaitConditionPrivate::wait (deadline=..., this=0x55f4daf102c0) at thread/qwaitcondition_unix.cpp:144
#5  QWaitCondition::wait (this=this@entry=0x55f4daf101b0, mutex=mutex@entry=0x55f4dabf8e18, deadline=...) at thread/qwaitcondition_unix.cpp:225
#6  0x00007f1b38ef5a61 in QThreadPoolThread::run (this=0x55f4daf101a0) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:275
#7  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x55f4daf101a0) at thread/qthread_unix.cpp:329
#8  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f1b2bfff700 (LWP 139314)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55f4dabf2f50) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55f4dabf2f00, cond=0x55f4dabf2f28) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55f4dabf2f28, mutex=0x55f4dabf2f00) at pthread_cond_wait.c:638
#3  0x00007f1b38ef85cb in QWaitConditionPrivate::wait (deadline=..., this=0x55f4dabf2f00) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55f4dabdc9f8, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f1b3ae86069 in ?? () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#6  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x55f4dabdc990) at thread/qthread_unix.cpp:329
#7  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f1b31ea5700 (LWP 139313)):
#0  0x00007f1b3656e93d in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f1b3656f29b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f1b3656f4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1b3913361b in QEventDispatcherGlib::processEvents (this=0x7f1b2c000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f1b390d78ab in QEventLoop::exec (this=this@entry=0x7f1b31ea4930, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007f1b38ef12c2 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007f1b39394f4b in ?? () from /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007f1b38ef245c in QThreadPrivate::start (arg=0x7f1b39418d80) at thread/qthread_unix.cpp:329
#8  0x00007f1b36e82609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f1b38b72293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f1b32dd0c40 (LWP 139312)):
[KCrash Handler]
#4  0x00007f1b3ae3a83b in Gwenview::DocumentView::dragThumbnailLoaded(KFileItem const&, QPixmap const&) () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#5  0x00007f1b3910fdce in QtPrivate::QSlotObjectBase::call (a=0x7ffcaf79cb30, r=0x55f4db32a1d0, this=0x55f4dba0d8d0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#6  doActivate<false> (sender=0x55f4dad3e9a0, signal_index=25, argv=0x7ffcaf79cb30) at kernel/qobject.cpp:3886
#7  0x00007f1b3ae00a52 in Gwenview::ThumbnailProvider::thumbnailLoaded(KFileItem const&, QPixmap const&, QSize const&, unsigned long long) () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#8  0x00007f1b3ae88c7f in Gwenview::ThumbnailProvider::emitThumbnailLoaded(QImage const&, QSize const&) () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#9  0x00007f1b3ae88d03 in Gwenview::ThumbnailProvider::thumbnailReady(QImage const&, QSize const&) () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#10 0x00007f1b39106949 in QObject::event (this=0x55f4dad3e9a0, e=0x7f1af8006a90) at kernel/qobject.cpp:1314
#11 0x00007f1b39e9adc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#12 0x00007f1b39ea3bb8 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#13 0x00007f1b390d8daa in QCoreApplication::notifyInternal2 (receiver=0x55f4dad3e9a0, event=0x7f1af8006a90) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#14 0x00007f1b390db6b1 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55f4daad80d0) at kernel/qcoreapplication.cpp:1821
#15 0x00007f1b39133fa7 in postEventSourceDispatch (s=0x55f4dab32e50) at kernel/qeventdispatcher_glib.cpp:277
#16 0x00007f1b3656f17d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007f1b3656f400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f1b3656f4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f1b39133602 in QEventDispatcherGlib::processEvents (this=0x55f4daac8800, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#20 0x00007f1b390d78ab in QEventLoop::exec (this=this@entry=0x7ffcaf79d190, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#21 0x00007f1b390dfa64 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#22 0x000055f4d94c656d in ?? ()
#23 0x00007f1b38a770b3 in __libc_start_main (main=0x55f4d94c6060, argc=2, argv=0x7ffcaf79d408, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffcaf79d3f8) at ../csu/libc-start.c:308
#24 0x000055f4d94c6bfe in ?? ()
[Inferior 1 (process 139312) detached]

The reporter indicates this bug may be a duplicate of or related to bug 425120, bug 430063.

Possible duplicates by query: bug 445434, bug 444339, bug 444091, bug 443460, bug 442652.

Reported using DrKonqi
Comment 1 A Linux User 2025-08-19 17:20:24 UTC
Thank you for the bug report. Unfortunately we were not able to get to it yet. Can we ask you to please check if this is still an issue with Gwenview 25.08.0 (the latest released version)?
Comment 2 Bug Janitor Service 2025-09-03 03:48:01 UTC
๐Ÿ›๐Ÿงน โš ๏ธ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 3 Bug Janitor Service 2025-09-18 03:48:31 UTC
๐Ÿ›๐Ÿงน This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.