Crash when saving text layer
Environment/Versions
- GIMP version: master (it's not totally true, I was on !1386 but the crashing code was somewhere else)
- Operating System: Linux?
Description of the bug
I was testing the text tool, and wrote some text layer with the default Sans-serif font. I tried to save the XCF and got this crash.
It looks like font
was NULL when running in gimp_text_serialize_property()
(app/text/gimptext.c
):
GIMP_CONFIG_GET_IFACE (GIMP_CONFIG (font))->serialize (GIMP_CONFIG (font),
writer,
NULL);
Reproduction
Apart from this one time, I couldn't reproduce this. I'm not sure how this could have happened even more as that was a fully-created text layer with a default font, so the font was available. We could just add a if (font)
test, but that would not be a proper fix (or a fix at all) because I don't think this should ever happen.
@user062 Maybe you have an idea?
Is the bug reproducible? Happened only once
Reproduction steps:
- Create some text layer. I was adding some color, italic, bold or other formatting (because I was testing !1386).
- Save to XCF.
Expected result: XCF saved.
Actual result: GIMP crashed.
Additional information
Backtrace and debug data
GNU Image Manipulation Program version 2.99.19
git-describe: GIMP_2_99_18-422-gc92df62a93
Build: unknown rev 0 for linux
# C compiler #
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --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-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --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=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.1 20210110 (Debian 10.2.1-6)
# Libraries #
using babl version 0.1.109 (compiled against version 0.1.109)
using GEGL version 0.4.49 (compiled against version 0.4.49)
using GLib version 2.77.0 (compiled against version 2.77.0)
using GdkPixbuf version 2.42.2 (compiled against version 2.42.2)
using GTK+ version 3.24.39 (compiled against version 3.24.39)
using Pango version 1.50.7 (compiled against version 1.50.7)
using Fontconfig version 2.14.2 (compiled against version 2.14.2)
using Cairo version 1.17.9 (compiled against version 1.17.9)
fatal error: Segmentation fault
Stack trace:
# Stack traces obtained from PID 55639 - Thread 55639 #
[New LWP 55640]
[New LWP 55641]
[New LWP 55642]
[New LWP 55643]
[New LWP 55644]
[New LWP 55645]
[New LWP 55646]
[New LWP 55647]
[New LWP 55648]
[New LWP 55649]
[New LWP 55651]
[New LWP 55967]
[New LWP 56197]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
__libc_read (nbytes=255, buf=0x7ffff1222470, fd=19) at ../sysdeps/unix/sysv/linux/read.c:26
Id Target Id Frame
* 1 Thread 0x7fd237f90f40 (LWP 55639) "gimp-2.99" __libc_read (nbytes=255, buf=0x7ffff1222470, fd=19) at ../sysdeps/unix/sysv/linux/read.c:26
2 Thread 0x7fd2376c3700 (LWP 55640) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
3 Thread 0x7fd236ec2700 (LWP 55641) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
4 Thread 0x7fd2366c1700 (LWP 55642) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
5 Thread 0x7fd235ec0700 (LWP 55643) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
6 Thread 0x7fd2356bf700 (LWP 55644) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
7 Thread 0x7fd234ebe700 (LWP 55645) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
8 Thread 0x7fd22ffff700 (LWP 55646) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
9 Thread 0x7fd22f458700 (LWP 55647) "pool-spawner" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
10 Thread 0x7fd22ec57700 (LWP 55648) "gmain" 0x00007fd23bc4d96f in __GI___poll (fds=0x562a14ce26b0, nfds=2, timeout=2317) at ../sysdeps/unix/sysv/linux/poll.c:29
11 Thread 0x7fd22e456700 (LWP 55649) "gdbus" 0x00007fd23bc4d96f in __GI___poll (fds=0x7fd20c000b80, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
12 Thread 0x7fd22d13c700 (LWP 55651) "async" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
13 Thread 0x7fd1fcf27700 (LWP 55967) "swap writer" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
14 Thread 0x7fd1ff482700 (LWP 56197) "pool-gimp-2.99" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#0 __libc_read (nbytes=255, buf=0x7ffff1222470, fd=19) at ../sysdeps/unix/sysv/linux/read.c:26
resultvar = 18446744073709551104
sc_cancel_oldtype = 0
__arg3 = <optimized out>
_a2 = <optimized out>
sc_ret = <optimized out>
__value = <optimized out>
__arg1 = <optimized out>
_a3 = <optimized out>
resultvar = <optimized out>
resultvar = <optimized out>
__arg2 = <optimized out>
_a1 = <optimized out>
#1 __libc_read (fd=19, buf=buf@entry=0x7ffff1222470, nbytes=nbytes@entry=255) at ../sysdeps/unix/sysv/linux/read.c:24
No locals.
#2 0x00007fd23d6f430c in gimp_stack_trace_print (prog_name=0x7ffff1222470 "", stream=stream@entry=0x562a14f3e5b0, trace=trace@entry=0x0) at ../../../../../../../dev/src/gimp/libgimpbase/gimputils.c:1394
status = 0
stack_printed = 0
gtrace = 0x0
gimp_pid = "55639\000\000\000\001\000\000\000\000\000\000"
buffer = "\000\000\000\000\000\000\000\000\200@T\031*V\000\000\300t\367\026*V\000\000#\006r=\322\177\000\000\005", '\000' <repeats 15 times>, "\005\000\000\000\000\000\000\000\260\342m=\322\177\000\000\260(\"\361\377\177\000\000\212vr=\322\177\000\000\260\345\363\024*V\000\000\t", '\000' <repeats 15 times>, "\260\345\363\024*V\000\000@\343\337\024*V\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\200\321s=\322\177\000\000\377\377\377\377", '\000' <repeats 12 times>, "\070\061\266;\322\177\000\000\200\037\000\000\377\377\000\000\350\324s=\322\177\000\000\000\000\000\000\000\000\000\000\200\207$;\322\177\000\000"...
read_n = <optimized out>
sync_fd = {17, 18}
out_fd = {19, 20}
fork_pid = <optimized out>
pid = 55639
eintr_count = 0
tid = <optimized out>
#3 0x0000562a142e2280 in gimp_eek (reason=reason@entry=0x562a145cb859 "fatal error", message=0x7ffff1222910 "0", use_handler=use_handler@entry=1) at ../../../../../../../dev/src/gimp/app/errors.c:355
fd = 0x562a14f3e5b0
has_backtrace = 1
pid = "55639\000\000\000\000\000\000\000\005\000\000"
gimpdebug = 0x562a145cb870 "/home/jehan/.local/share/crossroad/roads/native/gimp/libexec/gimp-debug-tool-2.99"
args = {0x562a145cb870 "/home/jehan/.local/share/crossroad/roads/native/gimp/libexec/gimp-debug-tool-2.99", 0x562a14dfe340 "app/gimp-2.99", 0x7ffff1222900 "55639", 0x562a145cb859 "fatal error", 0x562a189a9743 "Segmentation fault", 0x562a14dfb340 "/home/jehan/.config/GIMP/2.99/CrashLog/gimp-crash-1713359916.txt", 0x0, 0x7ffff1222910 "0", 0x0}
timestamp = "0\000\000\000\377\177\000\000\021\000\000\000\000\000\000"
config = <optimized out>
eek_handled = 0
debug_policy = GIMP_DEBUG_POLICY_WARNING
iter = <optimized out>
num_idx = <optimized out>
i = 0
#4 0x0000562a142e26a8 in gimp_fatal_error (message=<optimized out>) at ../../../../../../../dev/src/gimp/app/errors.c:206
No locals.
#5 0x0000562a142e5019 in gimp_sigfatal_handler (sig_num=11) at ../../../../../../../dev/src/gimp/app/signals.c:196
No locals.
#6 <signal handler called>
No locals.
#7 0x0000562a142b0411 in GIMP_CONFIG_GET_IFACE (ptr=0x0) at ../../../../../../../dev/src/gimp/libgimpconfig/gimpconfig-iface.h:34
No locals.
#8 gimp_text_serialize_property (config=<optimized out>, property_id=<optimized out>, value=<optimized out>, pspec=<optimized out>, writer=0x562a1a4bfaa0) at ../../../../../../../dev/src/gimp/app/text/gimptext.c:847
altered_font_name = 0x562a16f774c0 "Sans-serif"
font_name = <optimized out>
attr_font_desc = <optimized out>
ti = 0
markup = 0x562a19dec440 "<markup>Hello <span font=\"Sans-serif\"><span size=\"10321\"><span foreground=\"#ff0000\">world </span></span></span><span font=\"Sans-serif\"><i><span size=\"10321\"><span foreground=\"#ff0000\">lol</span></span"...
regex = 0x562a180da9f0
container = 0x562a14c5e520
length = 7
list = 0x562a19b6e720
text = <optimized out>
attr_list = 0x562a1a647c80
font = <optimized out>
fonts = 0x562a19544080
__func__ = "gimp_text_serialize_property"
#9 0x00007fd23d6af9ba in gimp_config_serialize_property (config=config@entry=0x562a19a11390, param_spec=0x562a1707f0e0, writer=writer@entry=0x562a1a4bfaa0) at ../../../../../../../dev/src/gimp/libgimpconfig/gimpconfig-serialize.c:234
config_iface = 0x562a151702a0
parent_iface = <optimized out>
value = {g_type = 64, data = {{v_int = 430438704, v_uint = 430438704, v_long = 94738819053872, v_ulong = 94738819053872, v_int64 = 94738819053872, v_uint64 = 94738819053872, v_float = 1.73680413e-23, v_double = 4.6807195822088264e-310, v_pointer = 0x562a19a7f930}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
success = 0
#10 0x00007fd23d6afd6f in gimp_config_serialize_properties (config=0x562a19a11390, writer=0x562a1a4bfaa0) at ../../../../../../../dev/src/gimp/libgimpconfig/gimpconfig-serialize.c:97
prop_spec = <optimized out>
klass = <optimized out>
property_specs = 0x562a1a5bbaf0
n_property_specs = 37
i = 3
success = 1
__func__ = "gimp_config_serialize_properties"
#11 0x00007fd23d6abbfa in gimp_config_serialize_to_string (config=0x562a19a11390, data=0x0) at ../../../../../../../dev/src/gimp/libgimpconfig/gimpconfig-iface.c:408
writer = 0x562a1a4bfaa0
str = 0x562a19a08980
__func__ = "gimp_config_serialize_to_string"
#12 0x00007fd23d6abca2 in gimp_config_serialize_to_parasite (config=0x562a19a11390, parasite_name=0x562a145bcad6 "gimp-text-layer", parasite_flags=parasite_flags@entry=1, data=data@entry=0x0) at ../../../../../../../dev/src/gimp/libgimpconfig/gimpconfig-iface.c:440
parasite = <optimized out>
str = <optimized out>
__func__ = "gimp_config_serialize_to_parasite"
#13 0x0000562a1431dbc3 in gimp_text_to_parasite (text=<optimized out>) at ../../../../../../../dev/src/gimp/app/text/gimptext-parasite.c:62
__func__ = "gimp_text_to_parasite"
#14 0x0000562a1431da1d in gimp_text_layer_xcf_save_prepare (layer=layer@entry=0x562a199f5160) at ../../../../../../../dev/src/gimp/app/text/gimptextlayer-xcf.c:133
parasite = <optimized out>
text = <optimized out>
__func__ = "gimp_text_layer_xcf_save_prepare"
#15 0x0000562a142d225f in xcf_save_layer_props (error=0x7ffff1223458, layer=0x562a199f5160, image=0x562a19339920, info=0x7ffff1223460) at ../../../../../../../dev/src/gimp/app/xcf/xcf-save.c:716
text_layer = 0x562a199f5160
flags = 0
parasites = <optimized out>
iter = <optimized out>
offset_x = 99
offset_y = 422
parasites = <optimized out>
iter = <optimized out>
offset_x = <optimized out>
offset_y = <optimized out>
path = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
text_layer = <optimized out>
flags = <optimized out>
flags = <optimized out>
set = <optimized out>
items = <optimized out>
#16 xcf_save_layer (error=0x7ffff1223458, layer=0x562a199f5160, image=0x562a19339920, info=0x7ffff1223460) at ../../../../../../../dev/src/gimp/app/xcf/xcf-save.c:1976
value = 1
filters = 0x562a199762f0
filter_list = <optimized out>
num_effects = <optimized out>
list = <optimized out>
saved_pos = 0
offset = 94738735458112
string = 0x562a18248080 "Hello world lol"
tmp_error = 0x0
saved_pos = <optimized out>
offset = <optimized out>
value = <optimized out>
string = <optimized out>
filters = <optimized out>
filter_list = <optimized out>
num_effects = <optimized out>
list = <optimized out>
tmp_error = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
i = <optimized out>
mask = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
filter = <optimized out>
#17 xcf_save_image (info=info@entry=0x7ffff1223460, image=image@entry=0x562a19339920, error=error@entry=0x7ffff1223458) at ../../../../../../../dev/src/gimp/app/xcf/xcf-save.c:393
layer = 0x562a199f5160
all_layers = 0x562a1a386310
all_channels = <optimized out>
all_paths = 0x0
list = 0x562a1a386310
saved_pos = 1086
offset = 1118
value = 150
n_layers = <optimized out>
n_channels = <optimized out>
n_paths = <optimized out>
progress = 1
max_progress = <optimized out>
version_tag = "gimp xcf v019\000\000"
write_paths = <optimized out>
tmp_error = 0x0
#18 0x0000562a142c4a7c in xcf_save_stream (gimp=gimp@entry=0x562a14c76850, image=image@entry=0x562a19339920, output=0x7ffff1223458, output@entry=0x562a1a64b010, output_file=output_file@entry=0x562a1a5ac3d0, progress=progress@entry=0x562a17479a70, error=error@entry=0x7ffff1223928) at ../../../../../../../dev/src/gimp/app/xcf/xcf.c:381
info = {gimp = 0x562a14c76850, progress = 0x562a17479a70, input = 0x0, output = 0x562a1a64b010, seekable = 0x562a1a64b010, cp = 1366, bytes_per_offset = 8, file = 0x562a1a5ac3d0, tattoo_state = 0, selected_layers = 0x0, selected_channels = 0x0, selected_vectors = 0x0, linked_layers = 0x0, linked_channels = 0x0, linked_paths = 0x0, layer_sets = 0x0, channel_sets = 0x0, floating_sel_drawable = 0x0, floating_sel = 0x0, floating_sel_offset = 0, compression = COMPRESS_RLE, file_version = 19}
filename = 0x562a19207970 "/home/jehan/Untitled.xcf"
success = 0
my_error = 0x0
cancellable = <optimized out>
__func__ = "xcf_save_stream"
#19 0x0000562a142c4cfa in xcf_save_invoker (procedure=0x562a14e1dc60, gimp=0x562a14c76850, context=<optimized out>, progress=0x562a17479a70, args=<optimized out>, error=0x7ffff1223928) at ../../../../../../../dev/src/gimp/app/xcf/xcf.c:486
return_vals = <optimized out>
image = 0x562a19339920
file = 0x562a1a5ac3d0
output = 0x562a1a64b010
success = 0
my_error = 0x0
#20 0x0000562a142941ff in gimp_procedure_execute (procedure=procedure@entry=0x562a14e1dc60, gimp=0x562a14c76850, context=0x562a18077240, context@entry=0x562a14e13480, progress=progress@entry=0x562a17479a70, args=args@entry=0x562a19dc8750, error=error@entry=0x7ffff1223928) at ../../../../../../../dev/src/gimp/app/pdb/gimpprocedure.c:515
return_vals = <optimized out>
pdb_error = 0x0
__func__ = "gimp_procedure_execute"
#21 0x0000562a14290c49 in gimp_pdb_execute_procedure_by_name_args (pdb=pdb@entry=0x562a14e1c570, context=context@entry=0x562a14e13480, progress=progress@entry=0x562a17479a70, error=error@entry=0x7ffff1223928, name=name@entry=0x562a145b87df "gimp-xcf-save", args=args@entry=0x562a19dc8750) at ../../../../../../../dev/src/gimp/app/pdb/gimppdb.c:320
procedure = 0x562a14e1dc60
return_vals = 0x0
list = 0x562a14e1f1b0
__func__ = "gimp_pdb_execute_procedure_by_name_args"
#22 0x0000562a14291489 in gimp_pdb_execute_procedure_by_name (pdb=0x562a14e1c570, context=0x562a14e13480, progress=progress@entry=0x562a17479a70, error=error@entry=0x7ffff1223928, name=name@entry=0x562a145b87df "gimp-xcf-save") at ../../../../../../../dev/src/gimp/app/pdb/gimppdb.c:508
procedure = 0x562a14e1dc60
args = 0x562a19dc8750
return_vals = <optimized out>
va_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7ffff1223848, reg_save_area = 0x7ffff1223710}}
prev_value_type = <optimized out>
prev_int_value = <optimized out>
i = <optimized out>
__func__ = "gimp_pdb_execute_procedure_by_name"
#23 0x0000562a14450356 in file_save (gimp=gimp@entry=0x562a14c76850, image=image@entry=0x562a19339920, progress=progress@entry=0x562a17479a70, file=file@entry=0x562a1a5ac3d0, file_proc=file_proc@entry=0x562a14e1dc60, run_mode=run_mode@entry=GIMP_RUN_INTERACTIVE, change_saved_state=1, export_backward=0, export_forward=0, error=0x7ffff1223928) at ../../../../../../../dev/src/gimp/app/file/file-save.c:203
return_vals = <optimized out>
orig_file = 0x562a1a5ac3d0
status = GIMP_PDB_EXECUTION_ERROR
local_file = 0x0
mounted = 1
my_error = 0x0
drawables_list = <optimized out>
drawables = 0x562a1a619d10
n_drawables = 1
__func__ = "file_save"
#24 0x0000562a1448637a in file_save_dialog_save_image (progress=progress@entry=0x562a17479a70, gimp=gimp@entry=0x562a14c76850, image=image@entry=0x562a19339920, file=file@entry=0x562a1a5ac3d0, save_proc=save_proc@entry=0x562a14e1dc60, run_mode=run_mode@entry=GIMP_RUN_INTERACTIVE, change_saved_state=1, export_backward=0, export_forward=0, xcf_compression=0, verbose_cancel=0) at ../../../../../../../dev/src/gimp/app/dialogs/file-save-dialog.c:823
status = <optimized out>
error = 0x0
list = <optimized out>
success = 0
#25 0x0000562a144869e4 in file_save_dialog_response (dialog=<optimized out>, response_id=<optimized out>, gimp=0x562a14c76850) at ../../../../../../../dev/src/gimp/app/dialogs/file-save-dialog.c:218
image = 0x562a19339920
close_after_saving = 0
save_a_copy = 0
progress = 0x562a17479a70
display_to_close = 0x562a14f28040
xcf_compression = <optimized out>
is_save_dialog = <optimized out>
file_dialog = 0x562a17479a70
file = 0x562a1a5ac3d0
basename = 0x562a18052aa0 "Untitled.xcf"
save_proc = <optimized out>
#26 0x00007fd23d1e538f in g_closure_invoke (closure=0x562a1a491200, return_value=return_value@entry=0x0, n_param_values=n_param_values@entry=2, param_values=param_values@entry=0x7ffff1223bf0, invocation_hint=invocation_hint@entry=0x7ffff1223b90) at ../../../../../../../dev/src/glib/gobject/gclosure.c:832
marshal = 0x7fd23d1e77b0 <g_cclosure_marshal_VOID__INT>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x562a1a4911e0
__func__ = "g_closure_invoke"
#27 0x00007fd23d1f7876 in signal_emit_unlocked_R (node=node@entry=0x7ffff1223d30, detail=detail@entry=0, instance=instance@entry=0x562a17479a70, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffff1223bf0) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3980
tmp = <optimized out>
handler = 0x562a1a490e60
accumulator = 0x0
emission = {next = 0x7ffff1224000, instance = 0x562a17479a70, ihint = {signal_id = 478, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 4}
class_closure = 0x562a17ed5b20
hlist = <optimized out>
handler_list = 0x562a1a358ba0
return_accu = 0x0
accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
signal_id = 478
max_sequential_handler_number = 87159
return_value_altered = <optimized out>
n_params = <optimized out>
EMIT_RESTART = <optimized out>
__func__ = "signal_emit_unlocked_R"
#28 0x00007fd23d1f9014 in signal_emit_valist_unlocked (instance=instance@entry=0x562a17479a70, signal_id=signal_id@entry=478, detail=detail@entry=0, var_args=var_args@entry=0x7ffff1223e08) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3612
instance_and_params = 0x7ffff1223bf0
param_values = 0x7ffff1223c08
node = <optimized out>
i = <optimized out>
__func__ = "signal_emit_valist_unlocked"
node_copy = {signal_id = 478, itype = 94738790043120, name = 0x7fd23c585fbb "response", destroyed = 0, flags = 2, n_params = 1, single_va_closure_is_valid = 1, single_va_closure_is_after = 1, param_types = 0x562a17ed4d90, return_type = 4, class_closure_bsa = 0x562a17ed5a60, accumulator = 0x0, c_marshaller = 0x7fd23d1e77b0 <g_cclosure_marshal_VOID__INT>, va_marshaller = 0x7fd23d1e7840 <g_cclosure_marshal_VOID__INTv>, emission_hooks = 0x0, single_va_closure = 0x562a17ed5b20}
#29 0x00007fd23d1fe224 in g_signal_emit_valist (instance=0x562a17479a70, signal_id=478, detail=0, var_args=0x7ffff1223e08) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3355
No locals.
#30 0x00007fd23d1fe2d2 in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3675
var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7ffff1223ee0, reg_save_area = 0x7ffff1223e20}}
#31 0x00007fd23d1e55b9 in _g_closure_invoke_va (closure=closure@entry=0x562a1a3548e0, return_value=return_value@entry=0x0, instance=instance@entry=0x562a1a354ea0, args=args@entry=0x7ffff1224148, n_params=0, param_types=0x0) at ../../../../../../../dev/src/glib/gobject/gclosure.c:895
marshal = 0x7fd23d1e7430 <g_cclosure_marshal_VOID__VOIDv>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x562a1a3548c0
__func__ = "_g_closure_invoke_va"
#32 0x00007fd23d1f8446 in signal_emit_valist_unlocked (instance=instance@entry=0x562a1a354ea0, signal_id=signal_id@entry=410, detail=detail@entry=0, var_args=var_args@entry=0x7ffff1224148) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3516
return_accu = 0x0
accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
emission = {next = 0x0, instance = 0x562a1a354ea0, ihint = {signal_id = 410, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 94738784216320}
instance_type = <optimized out>
emission_return = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
rtype = 4
static_scope = 0
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = 1
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
__func__ = "signal_emit_valist_unlocked"
node_copy = {signal_id = 410, itype = 94738784216320, name = 0x562a16ec6575 "clicked", destroyed = 0, flags = 33, n_params = 0, single_va_closure_is_valid = 1, single_va_closure_is_after = 0, param_types = 0x0, return_type = 4, class_closure_bsa = 0x562a17a59d20, accumulator = 0x0, c_marshaller = 0x7fd23d1e73b0 <g_cclosure_marshal_VOID__VOID>, va_marshaller = 0x7fd23d1e7430 <g_cclosure_marshal_VOID__VOIDv>, emission_hooks = 0x0, single_va_closure = 0x562a17a59cf0}
#33 0x00007fd23d1fe224 in g_signal_emit_valist (instance=0x562a1a354ea0, signal_id=410, detail=0, var_args=0x7ffff1224148) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3355
No locals.
#34 0x00007fd23d1fe2d2 in g_signal_emit (instance=instance@entry=0x562a1a354ea0, signal_id=<optimized out>, detail=detail@entry=0) at ../../../../../../../dev/src/glib/gobject/gsignal.c:3675
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7ffff1224220, reg_save_area = 0x7ffff1224160}}
#35 0x00007fd23c1e393e in gtk_button_clicked (button=button@entry=0x562a1a354ea0) at ../../../../../../../dev/src/gtk3/gtk/gtkbutton.c:1541
__func__ = "gtk_button_clicked"
#36 0x00007fd23c1e39a9 in gtk_button_finish_activate (do_it=1, button=0x562a1a354ea0) at ../../../../../../../dev/src/gtk3/gtk/gtkbutton.c:2042
widget = 0x562a1a354ea0
priv = 0x562a1a354d20
widget = <optimized out>
priv = <optimized out>
#37 button_activate_timeout (data=0x562a1a354ea0) at ../../../../../../../dev/src/gtk3/gtk/gtkbutton.c:1984
No locals.
#38 0x00007fd23c040b39 in gdk_threads_dispatch (data=0x562a1a692cf0, data@entry=<error reading variable: value has been optimized out>) at ../../../../../../../dev/src/gtk3/gdk/gdk.c:769
dispatch = 0x562a1a692cf0
ret = 0
#39 0x00007fd23d0e54bb in g_timeout_dispatch (user_data=<optimized out>, callback=<optimized out>, source=0x562a1a644f60) at ../../../../../../../dev/src/glib/glib/gmain.c:5123
timeout_source = <optimized out>
again = <optimized out>
timeout_source = <optimized out>
again = <optimized out>
once_callback = <optimized out>
#40 g_timeout_dispatch (source=0x562a1a644f60, callback=<optimized out>, user_data=<optimized out>) at ../../../../../../../dev/src/glib/glib/gmain.c:5101
timeout_source = 0x562a1a644f60
again = <optimized out>
#41 0x00007fd23d0e17d8 in g_main_dispatch (context=context@entry=0x562a14bfbc10) at ../../../../../../../dev/src/glib/glib/gmain.c:3476
dispatch = 0x7fd23d0e54a0 <g_timeout_dispatch>
prev_source = 0x0
begin_time_nsec = 0
was_in_call = 0
user_data = 0x562a1a692cf0
callback = 0x7fd23c040b10 <gdk_threads_dispatch>
cb_funcs = <optimized out>
cb_data = 0x562a1899d510
need_destroy = <optimized out>
source = 0x562a1a644f60
current = 0x562a14d04c80
i = 0
__func__ = "g_main_dispatch"
#42 0x00007fd23d0e46d7 in g_main_context_dispatch_unlocked (context=0x562a14bfbc10) at ../../../../../../../dev/src/glib/glib/gmain.c:4286
No locals.
#43 g_main_context_iterate_unlocked (context=context@entry=0x562a14bfbc10, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../../../../../dev/src/glib/glib/gmain.c:4351
max_priority = 2147483647
timeout = 4
some_ready = 1
nfds = <optimized out>
allocated_nfds = <optimized out>
fds = 0x562a16ed5f30
begin_time_nsec = 0
#44 0x00007fd23d0e4dcf in g_main_context_iteration (context=context@entry=0x562a14bfbc10, may_block=may_block@entry=1) at ../../../../../../../dev/src/glib/glib/gmain.c:4416
retval = <optimized out>
#45 0x00007fd23ce41d25 in g_application_run (application=application@entry=0x562a14e3fcb0, argc=-249412740, argc@entry=0, argv=argv@entry=0x0) at ../../../../../../../dev/src/glib/gio/gapplication.c:2573
arguments = 0x562a14c22f00
status = 0
context = 0x562a14bfbc10
acquired_context = <optimized out>
__func__ = "g_application_run"
#46 0x0000562a142e1c36 in app_run (full_prog_name=0x562a14ad1d20 "app/gimp-2.99", filenames=<optimized out>, alternate_system_gimprc=alternate_system_gimprc@entry=0x0, alternate_gimprc=alternate_gimprc@entry=0x0, session_name=<optimized out>, batch_interpreter=<optimized out>, batch_commands=0x0, quit=0, as_new=0, no_interface=0, no_data=0, no_fonts=0, no_splash=0, be_verbose=0, use_shm=1, use_cpu_accel=1, console_messages=0, use_debug_handler=0, show_playground=1, show_debug_menu=1, stack_trace_mode=GIMP_STACK_TRACE_QUERY, pdb_compat_mode=GIMP_PDB_COMPAT_WARN, backtrace_file=0x562a14ac7320 "/home/jehan/.config/GIMP/2.99/CrashLog/gimp-crash-1713359916.txt") at ../../../../../../../dev/src/gimp/app/app.c:317
gimp = 0x562a14c76850
app = 0x562a14e3fcb0
default_folder = 0x0
gimpdir = 0x562a14e1da10
abort_message = <optimized out>
retval = 0
__func__ = "app_run"
#47 0x0000562a1411fd96 in main (argc=<optimized out>, argv=<optimized out>) at ../../../../../../../dev/src/gimp/app/main.c:786
context = 0x562a14ad1d60
error = 0x0
abort_message = <optimized out>
basename = <optimized out>
system_gimprc_file = 0x0
user_gimprc_file = 0x0
gimp_group = <optimized out>
backtrace_file = 0x562a14ac7320 "/home/jehan/.config/GIMP/2.99/CrashLog/gimp-crash-1713359916.txt"
retval = <optimized out>
i = <optimized out>
[Inferior 1 (process 55639) detached]