Package: gthumb
Version: 3:3.8.0-2
Severity: normal

Dear Maintainer,

Steps to reproduce:
* open gthumb
* double click on a photo
* open the "modify file" toolbar
* double click on the "rotate to the right" button

Expected outcome:
the photo is rotated by 180°

Actual outcome:
gthumb segfaults.

gdb is unable to print the whole backtrace with debug symbols (it hangs, using
100% of a CPU forever) so I put here both the backtrace without debug symbols
of coredumpctl debug and the truncated backtrace by gdb:

        Signal: 11 (SEGV)
     Timestamp: Sun 2019-12-22 18:57:30 CET (10s ago)
  Command Line: gthumb
    Executable: /usr/bin/gthumb
 Control Group: /user.slice/user-1000.slice/user@1000.service/gnome-terminal-
server.service
          Unit: user@1000.service
     User Unit: gnome-terminal-server.service
         Slice: user-1000.slice
     Owner UID: 1000 (plectrude)
       Boot ID: d283f182437547d9bb59f2fd1b4cf745
    Machine ID: ca9798c5968d4333b3dd9b9d95d01001
      Hostname: Mouah-PC
       Storage:
/var/lib/systemd/coredump/core.gthumb.1000.d283f182437547d9bb59f2fd1b4cf745.9466.1577037450000000000000.lz4
       Message: Process 9466 (gthumb) of user 1000 dumped core.

                Stack trace of thread 9466:
                #0  0x00007fc47d80a310 g_signal_emit_valist
(libgobject-2.0.so.0 + 0x2f310)
                #1  0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #2  0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #3  0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #4  0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #5  0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #6  0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #7  0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #8  0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #9  0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #10 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #11 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #12 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #13 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #14 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #15 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #16 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #17 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #18 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #19 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #20 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #21 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #22 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #23 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #24 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #25 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #26 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #27 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #28 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #29 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #30 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #31 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #32 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #33 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #34 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #35 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #36 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #37 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #38 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #39 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #40 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #41 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #42 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #43 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #44 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #45 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #46 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #47 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #48 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #49 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #50 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #51 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #52 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #53 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #54 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #55 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #56 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #57 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #58 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #59 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)
                #60 0x00007fc47d80b18f g_signal_emit_valist
(libgobject-2.0.so.0 + 0x3018f)
                #61 0x00007fc47d80b81f g_signal_emit (libgobject-2.0.so.0 +
0x3081f)
                #62 0x00007fc47d7eedc4 g_closure_invoke (libgobject-2.0.so.0 +
0x13dc4)
                #63 0x00007fc47d8024d4 signal_emit_unlocked_R
(libgobject-2.0.so.0 + 0x274d4)

                Stack trace of thread 9467:
                #0  0x00007fc47c9dbd0f __GI___poll (libc.so.6 + 0xefd0f)
                #1  0x00007fc47da5f09e g_main_context_poll (libglib-2.0.so.0 +
0x5009e)
                #2  0x00007fc47da5f1bf g_main_context_iteration
(libglib-2.0.so.0 + 0x501bf)
                #3  0x00007fc47da5f211 glib_worker_main (libglib-2.0.so.0 +
0x50211)
                #4  0x00007fc47da87d0d g_thread_proxy (libglib-2.0.so.0 +
0x78d0d)
                #5  0x00007fc47cab6fb7 start_thread (libpthread.so.0 + 0x8fb7)
                #6  0x00007fc47c9e62cf __clone (libc.so.6 + 0xfa2cf)

                Stack trace of thread 9468:
                #0  0x00007fc47c9dbd0f __GI___poll (libc.so.6 + 0xefd0f)
                #1  0x00007fc47da5f09e g_main_context_poll (libglib-2.0.so.0 +
0x5009e)
                #2  0x00007fc47da5f403 g_main_loop_run (libglib-2.0.so.0 +
0x50403)
                #3  0x00007fc47d94a8f6 gdbus_shared_thread_func
(libgio-2.0.so.0 + 0x1138f6)
                #4  0x00007fc47da87d0d g_thread_proxy (libglib-2.0.so.0 +
0x78d0d)
                #5  0x00007fc47cab6fb7 start_thread (libpthread.so.0 + 0x8fb7)
                #6  0x00007fc47c9e62cf __clone (libc.so.6 + 0xfa2cf)

                Stack trace of thread 9470:
                #0  0x00007fc47c9dbd0f __GI___poll (libc.so.6 + 0xefd0f)
                #1  0x00007fc47da5f09e g_main_context_poll (libglib-2.0.so.0 +
0x5009e)
                #2  0x00007fc47da5f1bf g_main_context_iteration
(libglib-2.0.so.0 + 0x501bf)
                #3  0x00007fc4790b4c0d n/a (libdconfsettings.so + 0x9c0d)
                #4  0x00007fc47da87d0d g_thread_proxy (libglib-2.0.so.0 +
0x78d0d)
                #5  0x00007fc47cab6fb7 start_thread (libpthread.so.0 + 0x8fb7)
                #6  0x00007fc47c9e62cf __clone (libc.so.6 + 0xfa2cf)

                Stack trace of thread 9472:
                #0  0x00007fc47c9901b3 __memset_sse2_unaligned_erms (libc.so.6
+ 0xa41b3)
                #1  0x00007fc47c9738f2 __libc_calloc (libc.so.6 + 0x878f2)
                #2  0x00007fc47b74ca02 create_bits (libpixman-1.so.0 + 0x19a02)
                #3  0x00007fc47b74caac create_bits_image_internal
(libpixman-1.so.0 + 0x19aac)
                #4  0x00007fc47ce9c07f
_cairo_image_surface_create_with_pixman_format (libcairo.so.2 + 0x3907f)
                #5  0x000055f61a702fc6 _cairo_image_surface_create (gthumb +
0x3cfc6)
                #6  0x00007fc478038b4d _cairo_image_surface_create_from_tiff
(libcairo_io.so + 0x14b4d)
                #7  0x000055f61a74e9c8 load_image_thread (gthumb + 0x889c8)
                #8  0x00007fc47d8e3bae g_task_thread_pool_thread
(libgio-2.0.so.0 + 0xacbae)
                #9  0x00007fc47da88404 g_thread_pool_thread_proxy
(libglib-2.0.so.0 + 0x79404)
                #10 0x00007fc47da87d0d g_thread_proxy (libglib-2.0.so.0 +
0x78d0d)
                #11 0x00007fc47cab6fb7 start_thread (libpthread.so.0 + 0x8fb7)
                #12 0x00007fc47c9e62cf __clone (libc.so.6 + 0xfa2cf)



Thread 5 (Thread 0x7fc45ff12700 (LWP 9472)):
#0  0x00007fc47c9901b3 in __memset_sse2_unaligned_erms () at
../sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S:214
#1  0x00007fc47c9738f2 in __libc_calloc (n=<optimized out>,
elem_size=elem_size@entry=1) at malloc.c:3498
#2  0x00007fc47b74ca02 in create_bits (clear=1, rowstride_bytes=<synthetic
pointer>, height=1375, width=2419, format=PIXMAN_a8r8g8b8) at
../../pixman/pixman-bits-image.c:935
#3  0x00007fc47b74ca02 in _pixman_bits_image_init
(image=image@entry=0x7fc458024730, format=format@entry=PIXMAN_a8r8g8b8,
width=width@entry=2419, height=height@entry=1375, bits=bits@entry=0x0,
rowstride=rowstride@entry=1073741824, clear=1) at ../../pixman/pixman-bits-
image.c:958
#4  0x00007fc47b74caac in create_bits_image_internal
(format=format@entry=PIXMAN_a8r8g8b8, width=2419, height=1375,
bits=bits@entry=0x0, rowstride_bytes=-1, clear=clear@entry=1) at
../../pixman/pixman-bits-image.c:1008
#5  0x00007fc47b74cb2b in pixman_image_create_bits
(format=format@entry=PIXMAN_a8r8g8b8, width=<optimized out>, height=<optimized
out>, bits=bits@entry=0x0, rowstride_bytes=<optimized out>) at
../../pixman/pixman-bits-image.c:1027
#6  0x00007fc47ce9c07f in _cairo_image_surface_create_with_pixman_format
(data=0x0, pixman_format=PIXMAN_a8r8g8b8, width=<optimized out>,
height=<optimized out>, stride=<optimized out>) at ../../../../src/cairo-image-
surface.c:349
#7  0x000055f61a702fc6 in _cairo_image_surface_create
(format=format@entry=CAIRO_FORMAT_ARGB32, width=<optimized out>,
height=<optimized out>) at ../gthumb/cairo-utils.c:293
#8  0x00007fc478038b4d in _cairo_image_surface_create_from_tiff
(istream=<optimized out>, file_data=<optimized out>, requested_size=-1,
original_width_p=0x7fc45ff11b0c, original_height_p=0x7fc45ff11b10,
loaded_original_p=0x7fc45ff11b14, user_data=0x0, cancellable=0x55f61d7f3ee0
[GCancellable], error=0x7fc45ff11b20) at ../extensions/cairo_io/cairo-image-
surface-tiff.c:241
#9  0x000055f61a74e9c8 in load_image_thread (task=0x55f61d7f2260 [GTask],
source_object=<optimized out>, task_data=<optimized out>,
cancellable=0x55f61d7f3ee0 [GCancellable]) at ../gthumb/gth-image-loader.c:241
#10 0x00007fc47d8e3bae in g_task_thread_pool_thread
(thread_data=0x55f61d7f2260, pool_data=<optimized out>) at
../../../gio/gtask.c:1410
#11 0x00007fc47da88404 in g_thread_pool_thread_proxy (data=<optimized out>) at
../../../glib/gthreadpool.c:308
#12 0x00007fc47da87d0d in g_thread_proxy (data=0x55f61d3fb770) at
../../../glib/gthread.c:805
#13 0x00007fc47cab6fb7 in start_thread (arg=<optimized out>) at
pthread_create.c:486
#14 0x00007fc47c9e62cf in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fc478843700 (LWP 9470)):
#0  0x00007fc47c9dbd0f in __GI___poll (fds=0x55f61c865fc0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fc47da5f09e in g_main_context_poll (priority=<optimized out>,
n_fds=1, fds=0x55f61c865fc0, timeout=<optimized out>, context=0x55f61c8c9e70)
at ../../../glib/gmain.c:4216
#2  0x00007fc47da5f09e in g_main_context_iterate
(context=context@entry=0x55f61c8c9e70, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3912
#3  0x00007fc47da5f1bf in g_main_context_iteration (context=0x55f61c8c9e70,
may_block=1) at ../../../glib/gmain.c:3978
#4  0x00007fc4790b4c0d in  () at /usr/lib/x86_64-linux-
gnu/gio/modules/libdconfsettings.so
#5  0x00007fc47da87d0d in g_thread_proxy (data=0x55f61ceed990) at
../../../glib/gthread.c:805
#6  0x00007fc47cab6fb7 in start_thread (arg=<optimized out>) at
pthread_create.c:486
#7  0x00007fc47c9e62cf in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fc479905700 (LWP 9468)):
#0  0x00007fc47c9dbd0f in __GI___poll (fds=0x7fc46c013280, nfds=3, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fc47da5f09e in g_main_context_poll (priority=<optimized out>,
n_fds=3, fds=0x7fc46c013280, timeout=<optimized out>, context=0x55f61c7e8a30)
at ../../../glib/gmain.c:4216
#2  0x00007fc47da5f09e in g_main_context_iterate (context=0x55f61c7e8a30,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
../../../glib/gmain.c:3912
#3  0x00007fc47da5f403 in g_main_loop_run (loop=0x55f61c7e8b20) at
../../../glib/gmain.c:4111
#4  0x00007fc47d94a8f6 in gdbus_shared_thread_func (user_data=0x55f61c7e8a00)
at ../../../gio/gdbusprivate.c:279
#5  0x00007fc47da87d0d in g_thread_proxy (data=0x55f61c7886d0) at
../../../glib/gthread.c:805
#6  0x00007fc47cab6fb7 in start_thread (arg=<optimized out>) at
pthread_create.c:486
#7  0x00007fc47c9e62cf in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fc47a516700 (LWP 9467)):
#0  0x00007fc47c9dbd0f in __GI___poll (fds=0x55f61c710270, nfds=2,
timeout=2999) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fc47da5f09e in g_main_context_poll (priority=<optimized out>,
n_fds=2, fds=0x55f61c710270, timeout=<optimized out>, context=0x55f61c711800)
at ../../../glib/gmain.c:4216
#2  0x00007fc47da5f09e in g_main_context_iterate
(context=context@entry=0x55f61c711800, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3912
#3  0x00007fc47da5f1bf in g_main_context_iteration (context=0x55f61c711800,
may_block=may_block@entry=1) at ../../../glib/gmain.c:3978
#4  0x00007fc47da5f211 in glib_worker_main (data=<optimized out>) at
../../../glib/gmain.c:5858
#5  0x00007fc47da87d0d in g_thread_proxy (data=0x55f61c711c00) at
../../../glib/gthread.c:805
#6  0x00007fc47cab6fb7 in start_thread (arg=<optimized out>) at
pthread_create.c:486
#7  0x00007fc47c9e62cf in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Quit


Also affects the version in testing (3.6.2-4).
Clicking on the "rotate to the right" twice but slowly works fine.



-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 
'testing-debug'), (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.2.0-3-amd64 (SMP w/2 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), 
LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages gthumb depends on:
ii  gsettings-desktop-schemas       3.34.0-2
ii  gthumb-data                     3:3.8.0-2
ii  libbrasero-media3-1             3.12.2-6
ii  libc6                           2.29-3
ii  libcairo2                       1.16.0-4
ii  libclutter-1.0-0                1.26.2+dfsg-12
ii  libclutter-gtk-1.0-0            1.8.4-4
ii  libexiv2-14                     0.25-4
ii  libgcc1                         1:9.2.1-17
ii  libgdk-pixbuf2.0-0              2.40.0+dfsg-1
ii  libgl1-mesa-dri                 19.2.1-1
ii  libglib2.0-0                    2.62.3-2
ii  libgstreamer-plugins-base1.0-0  1.16.1-1
ii  libgstreamer1.0-0               1.16.1-1
ii  libgtk-3-0                      3.24.12-1
ii  libjpeg62-turbo                 1:1.5.2-2+b1
ii  libjson-glib-1.0-0              1.4.4-2
ii  liblcms2-2                      2.9-3+b1
ii  libpango-1.0-0                  1.42.4-7
ii  libpangocairo-1.0-0             1.42.4-7
ii  libpng16-16                     1.6.37-1
ii  libraw19                        0.19.5-1
ii  librsvg2-2                      2.44.14-1
ii  libsecret-1-0                   0.19.1-1
ii  libsoup2.4-1                    2.68.2-1
ii  libstdc++6                      9.2.1-17
ii  libtiff5                        4.1.0-1
ii  libwebkit2gtk-4.0-37            2.26.2-1
ii  libwebp6                        0.6.1-2+b1
ii  zlib1g                          1:1.2.11.dfsg-1+b1

Versions of packages gthumb recommends:
ii  libgphoto2-6       2.5.22-3
ii  libgphoto2-port12  2.5.22-3

gthumb suggests no packages.

-- no debconf information

Reply via email to