Bug 505604 - Gwenview crashes when deleting a lot of photos in quick sequence
Summary: Gwenview crashes when deleting a lot of photos in quick sequence
Status: REPORTED
Alias: None
Product: gwenview
Classification: Applications
Component: general (other bugs)
Version First Reported In: 23.08.5
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2025-06-14 15:22 UTC by Costin Grigoras
Modified: 2025-07-06 22:46 UTC (History)
2 users (show)

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


Attachments
gwenview crashing on KDE Neon Testing ISO (664.83 KB, image/png)
2025-06-21 14:11 UTC, Costin Grigoras
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Costin Grigoras 2025-06-14 15:22:29 UTC
Application: gwenview (23.08.5)

Qt Version: 5.15.13
Frameworks Version: 5.115.0
Operating System: Linux 6.11.0-26-generic x86_64
Windowing System: X11
Distribution: Ubuntu 24.04.2 LTS
DrKonqi: 5.27.11 [KCrashBackend]

-- Information about the crash:
I was filtering a large number of photos and in series where I quickly delete a bunch of them (10-20) it crashes. Repeating the action leads to the same outcome.

The crash can be reproduced every time.

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

[KCrash Handler]
#4  0x00007dc1073ec950 in Gwenview::Document::setExiv2Image(std::unique_ptr<Exiv2::Image, std::default_delete<Exiv2::Image> >) () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#5  0x00007dc1073f7aa6 in ?? () from /lib/x86_64-linux-gnu/libgwenviewlib.so.5
#6  0x00007dc105112e16 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007dc104ee5c75 in QFutureWatcherBase::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007dc105d6bd45 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#9  0x00007dc1050d8118 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007dc1050db94b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007dc105135c0f in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#12 0x00007dc102e885c5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007dc102ee7737 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007dc102e87a63 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#15 0x00007dc105135279 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007dc1050d6a7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x00007dc1050df3e8 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00005a840fbede59 in ?? ()
#19 0x00007dc10462a1ca in __libc_start_call_main (main=main@entry=0x5a840fbed840, argc=argc@entry=2, argv=argv@entry=0x7fff1b4b3798) at ../sysdeps/nptl/libc_start_call_main.h:58
#20 0x00007dc10462a28b in __libc_start_main_impl (main=0x5a840fbed840, argc=2, argv=0x7fff1b4b3798, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff1b4b3788) at ../csu/libc-start.c:360
#21 0x00005a840fbee615 in ?? ()
[Inferior 1 (process 33552) detached]

Reported using DrKonqi
Comment 1 Pedro 2025-06-18 02:35:19 UTC
Thank you for the report. Do you have a minimal procedure to reproduce this bug? Could you list the steps? That would be very helpful.
Comment 2 Lenzoid 2025-06-20 21:13:11 UTC
Tried to reproduce on current git-master: In folder with 700 images added a date filter and then deleted a bunch of files. No crashes so far. Costin, you could spin up a KDE Neon Testing and try to reproduce there. You can try out the new KDE version while you're at it. If it fails to reproduce you can close it as fixed.

At this point support for Plasma 5 versions aren't really feasible anymore, but it is still shipped. Read more about the background here: https://discuss.kde.org/t/how-long-plasma-5-will-be-mantained/7276/6

Btw use precise numbers instead of "large number of photos".
Comment 3 Lenzoid 2025-06-20 21:17:10 UTC
Changing to needsinfo for now. Re-testing with new version or more precise steps would be ideal.
Comment 4 Costin Grigoras 2025-06-21 14:11:37 UTC
Created attachment 182484 [details]
gwenview crashing on KDE Neon Testing ISO
Comment 5 Costin Grigoras 2025-06-21 14:15:04 UTC
Hi,

I've tested it under the KDE Neon Testing ISO, booted from USB. It crashed again, please see below for the crash report, as well as attached (the collecting data process never finished, I gave up waiting for it).

The scenario was as follows:
- copied 100 large photos (6000x4000, JPG, 13.5MB/file average) to /tmp
- deleted one by one (Delete key)
- crashed after 76 photos

Please let me know if you need more info.

Cheers,

.costin

```
Starting debugger gdb --init-eval-command=set auto-solib-add off --nw --nx --batch --command=/tmp/drkonqi.WHNscF --command=/tmp/drkonqi.smrbpQ --core=/tmp/drkonqi-core.SZVoaO/core /usr/bin/gwenview

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.

warning: could not find '.gnu_debugaltlink' file for /usr/bin/gwenview

warning: Can't open file /memfd:pulseaudio (deleted) during file-backed mapping note processing

warning: Can't open file /memfd:wayland-shm (deleted) during file-backed mapping note processing

warning: Can't open file anon_inode:i915.gem which was expanded to anon_inode:i915.gem during file-backed mapping note processing
[New LWP 3542]
[New LWP 3557]
[New LWP 3631]
[New LWP 3560]
[New LWP 3632]
[New LWP 3636]
[New LWP 3562]
[New LWP 3571]
[New LWP 3585]
[New LWP 3550]
[New LWP 3547]
[New LWP 3551]
[New LWP 3548]
[New LWP 3561]
[New LWP 3549]
[New LWP 3584]
[New LWP 3565]
[New LWP 3564]
[New LWP 3563]
[New LWP 3637]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/bin/gwenview /tmp/poze/DSC_2656.JPG'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  __pthread_kill_implementation (no_tid=0, signo=11, 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 0x71fcc631c480 (LWP 3542))]
Cannot QML trace cores :(
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"
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libgwenviewlib.so.5
add symbol table from file "/lib/x86_64-linux-gnu/libgwenviewlib.so.5"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.4.97.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libQt6Core.so.6
add symbol table from file "/lib/x86_64-linux-gnu/libQt6Core.so.6"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libQt6Core.so.6.9.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libQt6Widgets.so.6
add symbol table from file "/lib/x86_64-linux-gnu/libQt6Widgets.so.6"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libQt6Widgets.so.6.9.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libglib-2.0.so.0
add symbol table from file "/lib/x86_64-linux-gnu/libglib-2.0.so.0"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0
add symbol table from file "/usr/bin/gwenview"
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libQt6Network.so.6
add symbol table from file "/lib/x86_64-linux-gnu/libQt6Network.so.6"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libQt6Network.so.6.9.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libKF6KIOCore.so.6
add symbol table from file "/lib/x86_64-linux-gnu/libKF6KIOCore.so.6"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libKF6KIOCore.so.6.16.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libQt6WaylandClient.so.6
add symbol table from file "/lib/x86_64-linux-gnu/libQt6WaylandClient.so.6"
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/libQt6WaylandClient.so.6.9.0
add symbol table from file "/lib/x86_64-linux-gnu/libgallium-24.2.8-1ubuntu1~24.04.1.so"
add symbol table from file "/lib/x86_64-linux-gnu/libjpeg.so.8"
Traceback (most recent call last):
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 812, in print_preamble
    print_preamble_internal()
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 803, in print_preamble_internal
    print_sentry_payload(thread)
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 727, in print_sentry_payload
    payload = SentryEvent().make(program, thread)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 528, in make
    SentryThread(thread, is_crashed=(thread == crash_thread)).to_dict() for thread in gdb.selected_inferior().threads()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 416, in to_dict
    'stacktrace': trace.to_dict(),
                  ^^^^^^^^^^^^^^^
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 367, in to_dict
    SentryTrace.load_solib(self.thread, cramped_memory)
  File "/usr/share/drkonqi/gdb/python/gdb_preamble/preamble.py", line 332, in load_solib
    raise UnexpectedMappingException(f"No solib and no image found for frame #{i} on thread {thread}! You could try with debug symbols downloading enabled.")
UnexpectedMappingException: No solib and no image found for frame #1 on thread <gdb.InferiorThread id=1.6 target-id="Thread 0x71fc6e7fc6c0 (LWP 3636)">! You could try with debug symbols downloading enabled.
No solib and no image found for frame #1 on thread <gdb.InferiorThread id=1.6 target-id="Thread 0x71fc6e7fc6c0 (LWP 3636)">! You could try with debug symbols downloading enabled.
Sentry is attempting to send 2 pending events
Waiting up to 30 seconds
Press Ctrl-C to quit
Debugging ended with exit code '1' and exit status 'NormalExit'
Debugging ended with exit code '1' and exit status 'NormalExit'
Debugging ended with exit code '1' and exit status 'NormalExit'
```
Comment 6 Bug Janitor Service 2025-07-06 03:47:24 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!