GIMP crashed while repeatedly switching layer visibility on and off

Bug #1965786 reported by henczati
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gimp (Ubuntu)
New
Undecided
Unassigned

Bug Description

Had like 6 layers with black pixels and transparency of size 109x109.
Base layer AFAIK monochrome indexed color, 8 bit color depth and alpha channel.
Others created in-session on transparent base, full image size.
Had a layer of an anti-aliased black circle (made on a transparent layer by anti-aliased WxH+0+0 circle-select, black fill, anti-aliased (W-2)x(H-2)+1+1 circle-select, delete).
Was trying to do an outline of it with fully opaque black pixels on another transparent layer.
Was clicking anti-aliased circle layer visibility on and off to see how well they match.
After cca. between 5-20 clicks, crash.
The remaining 3 layers were already finished black-pixel circle-outlines (with the above mentioned technique) of different sizes.

```
GNU Image Manipulation Program version 2.10.30
git-describe: GIMP_2_10_30
Build: unknown rev 0 for linux
# C compiler #
 Using built-in specs.
 COLLECT_GCC=gcc
 COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
 OFFLOAD_TARGET_NAMES=nvptx-none
 OFFLOAD_TARGET_DEFAULT=1
 Target: x86_64-linux-gnu
 Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
 Thread model: posix
 gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)

# Libraries #
using babl version 0.1.88 (compiled against version 0.1.88)
using GEGL version 0.4.34 (compiled against version 0.4.34)
using GLib version 2.56.4 (compiled against version 2.56.4)
using GdkPixbuf version 2.36.12 (compiled against version 2.36.12)
using GTK+ version 2.24.32 (compiled against version 2.24.32)
using Pango version 1.40.14 (compiled against version 1.42.3)
using Fontconfig version 2.13.1 (compiled against version 2.13.1)
using Cairo version 1.16.0 (compiled against version 1.16.0)

```
> fatal error: Aborted

Stack trace:
```

# Stack traces obtained from PID 6527 - Thread 6527 #

[New LWP 6528]
[New LWP 6529]
[New LWP 6530]
[New LWP 6532]
[New LWP 6547]
[New LWP 6548]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f9267059474 in __libc_read (fd=15, buf=0x7ffd30b982c0, nbytes=256) at ../sysdeps/unix/sysv/linux/read.c:27
  Id Target Id Frame
* 1 Thread 0x7f926c1940c0 (LWP 6527) "gimp-2.10" 0x00007f9267059474 in __libc_read (fd=15, buf=0x7ffd30b982c0, nbytes=256) at ../sysdeps/unix/sysv/linux/read.c:27
  2 Thread 0x7f9257c1f700 (LWP 6528) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
  3 Thread 0x7f9254a2f700 (LWP 6529) "gmain" 0x00007f9266d64bb9 in __GI___poll (fds=0x562480ffe860, nfds=2, timeout=3996) at ../sysdeps/unix/sysv/linux/poll.c:29
  4 Thread 0x7f924ffff700 (LWP 6530) "gdbus" 0x00007f9266d64bb9 in __GI___poll (fds=0x562481012e30, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
  5 Thread 0x7f922f23f700 (LWP 6532) "async" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
  6 Thread 0x7f921fb4f700 (LWP 6547) "swap writer" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
  7 Thread 0x7f922d7af700 (LWP 6548) "paint" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38

Thread 7 (Thread 0x7f922d7af700 (LWP 6548) "paint"):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f92678a296f in g_cond_wait () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x000056247ef7137f in ()
#3 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007f926704f6db in start_thread (arg=0x7f922d7af700) at pthread_create.c:463
        pd = 0x7f922d7af700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140265804986112, 3437238791991659559, 140265804981824, 0, 94714834031696, 140725420917824, -3416019291506799577, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f921fb4f700 (LWP 6547) "swap writer"):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f92678a296f in g_cond_wait () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007f9269158479 in () at /usr/lib/x86_64-linux-gnu/libgegl-0.4.so.0
#3 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007f926704f6db in start_thread (arg=0x7f921fb4f700) at pthread_create.c:463
        pd = 0x7f921fb4f700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140265573906176, 3437238791991659559, 140265573901888, 0, 94714832700272, 140725420914672, -3416058306989716441, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f922f23f700 (LWP 6532) "async"):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f92678a296f in g_cond_wait () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x000056247f1c17cc in ()
#3 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007f926704f6db in start_thread (arg=0x7f922f23f700) at pthread_create.c:463
        pd = 0x7f922f23f700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140265832838912, 3437238791991659559, 140265832834624, 0, 94714784583056, 140725420920416, -3416024024560759769, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f924ffff700 (LWP 6530) "gdbus"):
#0 0x00007f9266d64bb9 in __GI___poll (fds=0x562481012e30, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
        resultvar = 18446744073709551100
        sc_cancel_oldtype = 0
#1 0x00007f926785c6e9 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007f926785ca82 in g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007f926828f2d6 in () at /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007f926704f6db in start_thread (arg=0x7f924ffff700) at pthread_create.c:463
        pd = 0x7f924ffff700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140266384127744, 3437238791991659559, 140266384123456, 0, 94714782408944, 140725420920496, -3416233722044019673, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#6 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f9254a2f700 (LWP 6529) "gmain"):
#0 0x00007f9266d64bb9 in __GI___poll (fds=0x562480ffe860, nfds=2, timeout=3996) at ../sysdeps/unix/sysv/linux/poll.c:29
        resultvar = 18446744073709551100
        sc_cancel_oldtype = 0
#1 0x00007f926785c6e9 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007f926785c7fc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007f926785c841 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007f926704f6db in start_thread (arg=0x7f9254a2f700) at pthread_create.c:463
        pd = 0x7f9254a2f700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140266461918976, 3437238791991659559, 140266461914688, 0, 94714782408784, 140725420920112, -3416209850615788505, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#6 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f9257c1f700 (LWP 6528) "worker"):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007f92678a296f in g_cond_wait () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007f92691201a3 in () at /usr/lib/x86_64-linux-gnu/libgegl-0.4.so.0
#3 0x00007f92678842a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007f926704f6db in start_thread (arg=0x7f9257c1f700) at pthread_create.c:463
        pd = 0x7f9257c1f700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140266514282240, 3437238791991659559, 140266514277952, 0, 94714782408704, 140725420920304, -3416215631641768921, -3416182139054519257}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5 0x00007f9266d7161f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f926c1940c0 (LWP 6527) "gimp-2.10"):
#0 0x00007f9267059474 in __libc_read (fd=15, buf=0x7ffd30b982c0, nbytes=256) at ../sysdeps/unix/sysv/linux/read.c:27
        resultvar = 18446744073709551104
        sc_cancel_oldtype = 1
        sc_ret = <optimized out>
        sc_ret = <optimized out>
        nbytes = 256
        fd = 15
        buf = 0x7ffd30b982c0
#1 0x00007f926a7c0f50 in gimp_stack_trace_print () at /usr/lib/x86_64-linux-gnu/libgimpbase-2.0.so.0
#2 0x000056247eed75f2 in ()
#3 0x000056247eed7b88 in ()
#4 0x000056247eed8287 in ()
#5 0x00007f926705a980 in <signal handler called> () at /lib/x86_64-linux-gnu/libpthread.so.0
#6 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
        set = {__val = {0, 94714848336288, 140266841833504, 140266766697951, 140269264404480, 94714848336288, 94714848336389, 94714848336288, 94714848336288, 94714848336391, 94714848336588, 94714848336288, 94714848336588, 0, 0, 0}}
        pid = <optimized out>
        tid = <optimized out>
#7 0x00007f9266c907f1 in __GI_abort () at abort.c:79
        save_stage = 1
        act = {__sigaction_handler = {sa_handler = 0x5624856ffe90, sa_sigaction = 0x5624856ffe90}, sa_mask = {__val = {0, 94714857520784, 0, 0, 140725420920040, 0, 0, 5, 140725420919872, 140266767954112, 140266767939264, 0, 8503161789151593728, 140266767924226, 0, 140266767939264}}, sa_flags = 1719399427, sa_restorer = 0x7f92667bf598}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#8 0x00007f9266c803fa in __assert_fail_base (fmt=0x7f9266e076c0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7f92667bf598 "!xcb_xlib_threads_sequence_lost", file=file@entry=0x7f92667bf403 "../../src/xcb_io.c", line=line@entry=263, function=function@entry=0x7f92667bf848 "poll_for_event") at assert.c:92
        str = 0x5624856ffe90 "0od\203$V"
        total = 4096
#9 0x00007f9266c80472 in __GI___assert_fail (assertion=0x7f92667bf598 "!xcb_xlib_threads_sequence_lost", file=0x7f92667bf403 "../../src/xcb_io.c", line=263, function=0x7f92667bf848 "poll_for_event") at assert.c:101
#10 0x00007f926674dfe2 in () at /usr/lib/x86_64-linux-gnu/libX11.so.6
#11 0x00007f926674e090 in () at /usr/lib/x86_64-linux-gnu/libX11.so.6
#12 0x00007f926674e38d in _XEventsQueued () at /usr/lib/x86_64-linux-gnu/libX11.so.6
#13 0x00007f926673fe2d in XPending () at /usr/lib/x86_64-linux-gnu/libX11.so.6
#14 0x00007f926b480085 in () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#15 0x00007f926785c101 in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007f926785c690 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007f926785ca82 in g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x000056247eed6f42 in app_run ()
#19 0x000056247eed67fc in main ()
[Inferior 1 (process 6527) detached]

```

Revision history for this message
henczati (henczati) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.