Critical warning trying to get CursorType instead of by name: "Unable to load from the cursor theme"
Environment/Versions
- GIMP version: git master
- Operating System: Fedora 40/rawhide on Wayland
Reproduction
Is the bug reproducible? Always
Reproduction steps:
- Run GIMP with
G_DEBUG=fatal-criticals G_MESSAGES_DEBUG=all gdb ./gimp-2.99 --ex "b g_logv if log_level<=16" --ex r
- Open Gradients dialog via
Ctrl+G
- Press "Refresh Gradients" button in bottom bar
Expected result:
No critical warnings; proper cursor rendering.
Call to deprecated CursorType GDK_WATCH
should likely be replaced by a corresponding cursor name wait
or progress
.
Actual result:
Critical warning as https://gitlab.gnome.org/GNOME/gimp/-/blob/master/app/display/gimpdisplay-foreach.c#L288 calls gimp_display_shell_set_override_cursor (shell, (GimpCursorType) GDK_WATCH);
.
Gdk-Message: 16:13:20.385: Unable to load watch from the cursor theme
Thread 1 "gimp-2.99" hit Breakpoint 1, g_logv (log_domain=0x7ffff7a81030 "GLib-GObject", log_level=G_LOG_LEVEL_CRITICAL, format=0x7ffff7a1321a "%s: assertion '%s' failed",
args=args@entry=0x7fffffffb380) at ../glib/gmessages.c:1150
warning: 1150 ../glib/gmessages.c: No such file or directory
(gdb) bt full
#0 g_logv (log_domain=0x7ffff7a81030 "GLib-GObject", log_level=G_LOG_LEVEL_CRITICAL, format=0x7ffff7a1321a "%s: assertion '%s' failed", args=args@entry=0x7fffffffb380)
at ../glib/gmessages.c:1150
was_fatal = <optimized out>
was_recursion = <optimized out>
buffer = {<optimized out> <repeats 1025 times>}
msg_alloc = <optimized out>
msg = <optimized out>
i = <optimized out>
size = <optimized out>
#1 0x00007ffff7954193 in g_log (log_domain=<optimized out>, log_level=<optimized out>, format=<optimized out>) at ../glib/gmessages.c:1315
args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffb460, reg_save_area = 0x7fffffffb3a0}}
#2 0x00000000009d36f8 in gimp_cursor_set
(widget=0x3f42660, cursor_handedness=GIMP_HANDEDNESS_RIGHT, cursor_type=150, tool_cursor=GIMP_TOOL_CURSOR_NONE, modifier=GIMP_CURSOR_MODIFIER_NONE)
at ../app/widgets/gimpcursor.c:525
window = 0x411d850
cursor = 0x0
__func__ = "gimp_cursor_set"
#3 0x0000000000aaa32e in gimp_display_shell_set_override_cursor (shell=0x3f26c20, cursor_type=150) at ../app/display/gimpdisplayshell-cursor.c:95
__func__ = "gimp_display_shell_set_override_cursor"
#4 0x0000000000aa4bc2 in gimp_displays_set_busy (gimp=0xf928e0) at ../app/display/gimpdisplay-foreach.c:288
shell = 0x3f26c20
list = 0x1199cf0 = {0x131d5c0}
__func__ = "gimp_displays_set_busy"
#5 0x0000000000848d2b in gui_set_busy (gimp=0xf928e0) at ../app/gui/gui-vtable.c:251
#6 0x00000000005a9db6 in gimp_set_busy (gimp=0xf928e0) at ../app/core/gimp-gui.c:93
__func__ = "gimp_set_busy"
#7 0x0000000000a25dc1 in data_refresh_cmd_callback (action=0x4620b30, value=0x0, user_data=0x45bdf30) at ../app/actions/data-commands.c:264
view = 0x45bdf30
gimp = 0xf928e0
#8 0x00007ffff7a504da in g_closure_invoke (closure=0x4620e80, return_value=0x0, n_param_values=2, param_values=0x7fffffffb7e0, invocation_hint=0x7fffffffb730)
at ../gobject/gclosure.c:834
marshal = 0x7ffff7a56230 <g_cclosure_marshal_VOID__VARIANT>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x4620e60
__func__ = "g_closure_invoke"
#9 0x00007ffff7a7f903 in signal_emit_unlocked_R.isra.0
(node=node@entry=0x7fffffffb8e0, detail=detail@entry=0, instance=instance@entry=0x4620b30, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffb7e0) at ../gobject/gsignal.c:3879
tmp = <optimized out>
handler = 0x4620dc0
accumulator = <optimized out>
emission = {next = 0x7fffffffbcf0, instance = 0x4620b30, ihint = {signal_id = 388, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 0x4}
class_closure = <optimized out>
hlist = <optimized out>
handler_list = 0x4620dc0
return_accu = <optimized out>
accu = {g_type = 0x0, 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 = <optimized out>
max_sequential_handler_number = <optimized out>
return_value_altered = <optimized out>
n_params = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--c
EMIT_RESTART = <optimized out>
__func__ = {<optimized out> <repeats 23 times>}
#10 0x00007ffff7a70654 in signal_emit_valist_unlocked (instance=instance@entry=0x4620b30, signal_id=signal_id@entry=388, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffba50)
at ../gobject/gsignal.c:3511
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = 0
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 388, itype = , name = 0x7ffff6c371bf "activate", destroyed = 0, flags = 1, n_params = 1, single_va_closure_is_valid = 1, single_va_closure_is_after = 0, param_types = 0x37232e0, return_type = 0x4, class_closure_bsa = 0x3687660, accumulator = 0x0, c_marshaller = 0x7ffff7a56230 <g_cclosure_marshal_VOID__VARIANT>, va_marshaller = 0x7ffff7a4efa0 <g_cclosure_marshal_VOID__VARIANTv>, emission_hooks = 0x0, single_va_closure = 0x0}
__func__ = "signal_emit_valist_unlocked"
#11 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4620b30, signal_id=388, detail=0, var_args=var_args@entry=0x7fffffffba50) at ../gobject/gsignal.c:3254
#12 0x00007ffff7a70973 in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffbb30, reg_save_area = 0x7fffffffba70}}
#13 0x0000000000904966 in gimp_action_emit_activate (action=0x4620b30, value=0x0) at ../app/widgets/gimpaction.c:255
__func__ = "gimp_action_emit_activate"
#14 0x000000000090ca2d in gimp_action_impl_activate (action=0x4620b30, parameter=0x0) at ../app/widgets/gimpactionimpl.c:288
#15 0x00000000009059b3 in gimp_action_activate (action=0x4620b30) at ../app/widgets/gimpaction.c:751
__func__ = "gimp_action_activate"
#16 0x0000000000907b3b in gimp_action_proxy_button_activate (button=0x4652d10, action=0x4620b30) at ../app/widgets/gimpaction.c:1378
#17 0x00007ffff7a504da in g_closure_invoke (closure=0x4653c40, return_value=0x0, n_param_values=1, param_values=0x7fffffffbdb0, invocation_hint=0x7fffffffbd00)
at ../gobject/gclosure.c:834
marshal = 0x7ffff7a55900 <g_cclosure_marshal_VOID__VOID>
marshal_data = 0x0
in_marshal = 0
real_closure = 0x4653c20
__func__ = "g_closure_invoke"
#18 0x00007ffff7a7f903 in signal_emit_unlocked_R.isra.0
(node=node@entry=0x7fffffffbe90, detail=detail@entry=0, instance=instance@entry=0x4652d10, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffbdb0) at ../gobject/gsignal.c:3879
tmp = <optimized out>
handler = 0x4653be0
accumulator = <optimized out>
emission = {next = 0x7fffffffc1d0, instance = 0x4652d10, ihint = {signal_id = 436, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = 0x4}
class_closure = <optimized out>
hlist = <optimized out>
handler_list = 0x4653be0
return_accu = <optimized out>
accu = {g_type = 0x0, 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 = <optimized out>
max_sequential_handler_number = <optimized out>
return_value_altered = <optimized out>
n_params = <optimized out>
EMIT_RESTART = <optimized out>
__func__ = {<optimized out> <repeats 23 times>}
#19 0x00007ffff7a70654 in signal_emit_valist_unlocked (instance=instance@entry=0x4652d10, signal_id=signal_id@entry=436, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffc000)
at ../gobject/gsignal.c:3511
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = 0
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 436, itype = , name = 0x3a2eda2 "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 = 0x4, class_closure_bsa = 0x3f25910, accumulator = 0x0, c_marshaller = 0x7ffff7a55900 <g_cclosure_marshal_VOID__VOID>, va_marshaller = 0x7ffff7a4e270 <g_cclosure_marshal_VOID__VOIDv>, emission_hooks = 0x0, single_va_closure = 0x3f25870}
__func__ = "signal_emit_valist_unlocked"
#20 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4652d10, signal_id=436, detail=0, var_args=var_args@entry=0x7fffffffc000) at ../gobject/gsignal.c:3254
#21 0x00007ffff7a70973 in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffc0e0, reg_save_area = 0x7fffffffc020}}
#22 0x00007ffff68cb3d1 in gtk_button_do_release (emit_clicked=<optimized out>, button=<optimized out>) at ../gtk/gtkbutton.c:1845
priv = <optimized out>
priv = <optimized out>
#23 gtk_button_do_release (emit_clicked=1, button=0x4652d10) at ../gtk/gtkbutton.c:1832
priv = <optimized out>
priv = <optimized out>
#24 gtk_real_button_released (button=0x4652d10) at ../gtk/gtkbutton.c:1963
#28 0x00007ffff7a70973 in <emit signal '???' on instance ???> (instance=instance@entry=0x4652d10, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffc450, reg_save_area = 0x7fffffffc390}}
#25 0x00007ffff7a707a4 in _g_closure_invoke_va (param_types=0x0, n_params=<optimized out>, args=0x7fffffffc370, instance=0x4652d10, return_value=0x0, closure=0x3f25800)
at ../gobject/gclosure.c:897
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = 0
real_closure = 0x3f257e0
real_closure = <optimized out>
__func__ = {<optimized out> <repeats 21 times>}
_g_boolean_var_50 = <optimized out>
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = <optimized out>
_g_boolean_var_51 = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
#26 signal_emit_valist_unlocked (instance=instance@entry=0x4652d10, signal_id=signal_id@entry=435, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffc370)
at ../gobject/gsignal.c:3415
return_accu = 0x0
accu = {g_type = 0x0, 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 = Python Exception <class 'gdb.error'>: value has been optimized out
{next = 0x7fffffffc550, instance = 0x4652d10, ihint = {signal_id = 435, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = }
instance_type = Python Exception <class 'gdb.error'>: value has been optimized out
emission_return = {g_type = 0x0, 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 = 0x4
static_scope = <optimized out>
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = <optimized out>
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 435, itype = , name = 0x7ffff6c310b1 "released", destroyed = 0, flags = 1, n_params = 0, single_va_closure_is_valid = 1, single_va_closure_is_after = 0, param_types = 0x0, return_type = 0x4, class_closure_bsa = 0x3f25830, accumulator = 0x0, c_marshaller = 0x7ffff7a55900 <g_cclosure_marshal_VOID__VOID>, va_marshaller = 0x7ffff7a4e270 <g_cclosure_marshal_VOID__VOIDv>, emission_hooks = 0x0, single_va_closure = 0x3f25800}
__func__ = "signal_emit_valist_unlocked"
#27 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4652d10, signal_id=435, detail=0, var_args=var_args@entry=0x7fffffffc370) at ../gobject/gsignal.c:3254
#29 0x00007ffff68cb20d in multipress_released_cb (gesture=0x4652ea0, n_press=<optimized out>, x=<optimized out>, y=<optimized out>, widget=0x4652d10) at ../gtk/gtkbutton.c:666
button = 0x4652d10
priv = 0x4652b90
sequence = <optimized out>
#34 0x00007ffff7a70973 in <emit signal '???' on instance ???> (instance=instance@entry=0x4652ea0, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffc7d0, reg_save_area = 0x7fffffffc710}}
#30 0x00007ffff688a0fc in _gtk_marshal_VOID__INT_DOUBLE_DOUBLEv
(closure=<optimized out>, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0xfe3060) at gtk/gtkmarshalers.c:4804
cc = <optimized out>
data1 = <optimized out>
data2 = <optimized out>
callback = <optimized out>
arg0 = 7
arg1 = 0
arg2 = 6.9533478187683631e-310
args_copy = {{gp_offset = 32, fp_offset = 80, overflow_arg_area = 0x7fffffffc7d0, reg_save_area = 0x7fffffffc710}}
#31 0x00007ffff7a707a4 in _g_closure_invoke_va (param_types=0xfe3060, n_params=<optimized out>, args=0x7fffffffc6f0, instance=0x4652ea0, return_value=0x0, closure=0x46531b0)
at ../gobject/gclosure.c:897
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = 0
real_closure = 0x4653190
real_closure = <optimized out>
__func__ = {<optimized out> <repeats 21 times>}
_g_boolean_var_50 = <optimized out>
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = <optimized out>
_g_boolean_var_51 = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
#32 signal_emit_valist_unlocked (instance=instance@entry=0x4652ea0, signal_id=signal_id@entry=340, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffc6f0)
at ../gobject/gsignal.c:3415
return_accu = 0x0
accu = {g_type = 0x0, 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 = Python Exception <class 'gdb.error'>: value has been optimized out
{next = 0x7fffffffc930, instance = 0x4652ea0, ihint = {signal_id = 340, detail = 0, run_type = (G_SIGNAL_RUN_FIRST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = }
instance_type = Python Exception <class 'gdb.error'>: value has been optimized out
emission_return = {g_type = 0x0, 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 = 0x4
static_scope = <optimized out>
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = <optimized out>
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 340, itype = , name = 0x7ffff6c310b1 "released", destroyed = 0, flags = 2, n_params = 3, single_va_closure_is_valid = 1, single_va_closure_is_after = 1, param_types = 0xfe3060, return_type = 0x4, class_closure_bsa = 0x1020b10, accumulator = 0x0, c_marshaller = 0x7ffff6885cc0 <_gtk_marshal_VOID__INT_DOUBLE_DOUBLE>, va_marshaller = 0x7ffff688a060 <_gtk_marshal_VOID__INT_DOUBLE_DOUBLEv>, emission_hooks = 0x0, single_va_closure = 0x1020a20}
__func__ = "signal_emit_valist_unlocked"
#33 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4652ea0, signal_id=340, detail=0, var_args=var_args@entry=0x7fffffffc6f0) at ../gobject/gsignal.c:3254
#35 0x00007ffff69a623b in gtk_gesture_multi_press_end (gesture=0x4652ea0, sequence=sequence@entry=0x0) at ../gtk/gtkgesturemultipress.c:287
multi_press = 0x4652ea0
priv = 0x4652df0
current = 0x0
x = 28.38671875
y = 8.44921875
interpreted = 1
state = <optimized out>
#40 0x00007ffff7a70973 in <emit signal '???' on instance ???> (instance=instance@entry=0x4652ea0, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffcbb0, reg_save_area = 0x7fffffffcaf0}}
#36 0x00007ffff7a54a05 in g_cclosure_marshal_VOID__BOXEDv
(closure=0x12c5850, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x129d6e0)
at ../gobject/gmarshal.c:1686
cc = 0x12c5850
data1 = <optimized out>
data2 = 0xfdf5d0
callback = 0x7ffff69a6190 <gtk_gesture_multi_press_end>
arg0 = 0x0
args_copy = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffcbb0, reg_save_area = 0x7fffffffcaf0}}
#37 0x00007ffff7a707a4 in _g_closure_invoke_va (param_types=0x129d6e0, n_params=<optimized out>, args=0x7fffffffcad0, instance=0x4652ea0, return_value=0x0, closure=0x12c5850)
at ../gobject/gclosure.c:897
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = 0
real_closure = 0x12c5830
real_closure = <optimized out>
__func__ = {<optimized out> <repeats 21 times>}
_g_boolean_var_50 = <optimized out>
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = <optimized out>
_g_boolean_var_51 = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
#38 signal_emit_valist_unlocked (instance=instance@entry=0x4652ea0, signal_id=signal_id@entry=335, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffcad0)
at ../gobject/gsignal.c:3415
return_accu = 0x0
accu = {g_type = 0x0, 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 = Python Exception <class 'gdb.error'>: value has been optimized out
{next = 0x7fffffffce20, instance = 0x4652ea0, ihint = {signal_id = 335, detail = 0, run_type = (G_SIGNAL_RUN_LAST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = }
instance_type = Python Exception <class 'gdb.error'>: value has been optimized out
emission_return = {g_type = 0x0, 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 = 0x4
static_scope = <optimized out>
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = <optimized out>
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 335, itype = , name = 0x7ffff6c375b7 "end", destroyed = 0, flags = 2, n_params = 1, single_va_closure_is_valid = 1, single_va_closure_is_after = 1, param_types = 0x129d6e0, return_type = 0x4, class_closure_bsa = 0x129d700, accumulator = 0x0, c_marshaller = 0x7ffff7a562f0 <g_cclosure_marshal_VOID__BOXED>, va_marshaller = 0x7ffff7a54960 <g_cclosure_marshal_VOID__BOXEDv>, emission_hooks = 0x0, single_va_closure = 0x12c5850}
__func__ = "signal_emit_valist_unlocked"
#39 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4652ea0, signal_id=335, detail=0, var_args=var_args@entry=0x7fffffffcad0) at ../gobject/gsignal.c:3254
#41 0x00007ffff699ded4 in _gtk_gesture_set_recognized (sequence=0x0, recognized=0, gesture=0x4652ea0) at ../gtk/gtkgesture.c:346
priv = <optimized out>
#42 _gtk_gesture_check_recognized (gesture=gesture@entry=0x4652ea0, sequence=sequence@entry=0x0) at ../gtk/gtkgesture.c:387
priv = 0x4652e50
has_matching_touchpoints = 0
#43 0x00007ffff69a5c13 in gtk_gesture_handle_event (controller=0x4652ea0, event=0x44265c0) at ../gtk/gtkgesture.c:787
gesture = 0x4652ea0
sequence = 0x0
priv = 0x4652e50
source_device = <optimized out>
was_recognized = 1
#44 0x00007ffff69a943e in gtk_gesture_single_handle_event (controller=0x4652ea0, event=0x44265c0) at ../gtk/gtkgesturesingle.c:222
sequence = <optimized out>
priv = 0x4652e30
source_device = <optimized out>
source = <optimized out>
button = <optimized out>
i = <optimized out>
retval = <optimized out>
test_touchscreen = 0
#45 0x00007ffff6968773 in gtk_event_controller_handle_event (controller=0x4652ea0, event=0x44265c0) at ../gtk/gtkeventcontroller.c:230
controller_class = 0x1256ed0
retval = 0
__func__ = "gtk_event_controller_handle_event"
#46 0x00007ffff6b4d5e8 in _gtk_widget_run_controllers (widget=0x4652d10, event=0x44265c0, phase=GTK_PHASE_BUBBLE) at ../gtk/gtkwidget.c:7447
controller_phase = <optimized out>
next = 0x0
data = 0x4652f20
handled = <optimized out>
priv = 0x4652c20
l = <optimized out>
#51 0x00007ffff7a70973 in <emit signal '???' on instance ???> (instance=instance@entry=0x4652d10, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3574
var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffd0a0, reg_save_area = 0x7fffffffcfe0}}
#47 0x00007ffff68888b9 in _gtk_marshal_BOOLEAN__BOXEDv
(closure=0xf3dbb0, return_value=0x7fffffffced0, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0xf42460)
at gtk/gtkmarshalers.c:130
cc = 0xf3dbb0
data1 = <optimized out>
data2 = 0xf2b130
callback = 0x7ffff6b4d650 <gtk_widget_real_button_event.lto_priv>
v_return = <optimized out>
arg0 = 0x44265c0
args_copy = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffd0a0, reg_save_area = 0x7fffffffcfe0}}
__func__ = "_gtk_marshal_BOOLEAN__BOXEDv"
#48 0x00007ffff7a707a4 in _g_closure_invoke_va
(param_types=0xf42460, n_params=<optimized out>, args=0x7fffffffcfc0, instance=0x4652d10, return_value=0x7fffffffced0, closure=0xf3dbb0) at ../gobject/gclosure.c:897
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = 0
real_closure = 0xf3db90
real_closure = <optimized out>
__func__ = {<optimized out> <repeats 21 times>}
_g_boolean_var_50 = <optimized out>
marshal = <optimized out>
marshal_data = <optimized out>
in_marshal = <optimized out>
_g_boolean_var_51 = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
cunion = <optimized out>
new_int = <optimized out>
old_int = <optimized out>
success = <optimized out>
tmp = {closure = {ref_count = <optimized out>, meta_marshal_nouse = <optimized out>, n_guards = <optimized out>, n_fnotifiers = <optimized out>, n_inotifiers = <optimized out>, in_inotify = <optimized out>, floating = <optimized out>, derivative_flag = <optimized out>, in_marshal = <optimized out>, is_invalid = <optimized out>, marshal = <optimized out>, data = <optimized out>, notifiers = <optimized out>}, vint = <optimized out>}
gaicae_oldval = <optimized out>
#49 signal_emit_valist_unlocked (instance=instance@entry=0x4652d10, signal_id=signal_id@entry=106, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffcfc0)
at ../gobject/gsignal.c:3415
return_accu = 0x7fffffffced0
accu = {g_type = 0x14, 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 = Python Exception <class 'gdb.error'>: value has been optimized out
{next = 0x0, instance = 0x4652d10, ihint = {signal_id = 106, detail = 0, run_type = (G_SIGNAL_RUN_LAST | G_SIGNAL_ACCUMULATOR_FIRST_RUN)}, state = EMISSION_RUN, chain_type = }
instance_type = Python Exception <class 'gdb.error'>: value has been optimized out
emission_return = {g_type = 0x14, 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 = 0x14
static_scope = <optimized out>
fastpath_handler = <optimized out>
closure = <optimized out>
run_type = <optimized out>
hlist = <optimized out>
l = <optimized out>
fastpath = <optimized out>
instance_and_params = <optimized out>
param_values = <optimized out>
node = <optimized out>
i = <optimized out>
node_copy = Python Exception <class 'gdb.error'>: value has been optimized out
{signal_id = 106, itype = , name = 0x7ffff6c2cfe6 "button-release-event", destroyed = 0, flags = 2, n_params = 1, single_va_closure_is_valid = 1, single_va_closure_is_after = 1, param_types = 0xf42460, return_type = 0x14, class_closure_bsa = 0xf12c20, accumulator = 0xf123b0, c_marshaller = 0x7ffff688d6f0 <_gtk_marshal_BOOLEAN__BOXED>, va_marshaller = 0x7ffff6888810 <_gtk_marshal_BOOLEAN__BOXEDv>, emission_hooks = 0x0, single_va_closure = 0xf3dbb0}
__func__ = "signal_emit_valist_unlocked"
#50 0x00007ffff7a708b1 in g_signal_emit_valist (instance=0x4652d10, signal_id=106, detail=0, var_args=var_args@entry=0x7fffffffcfc0) at ../gobject/gsignal.c:3254
#52 0x00007ffff6b5d314 in gtk_widget_event_internal.part.0.lto_priv.0 (widget=0x4652d10, event=0x44265c0) at ../gtk/gtkwidget.c:7812
signal_num = <optimized out>
return_val = <optimized out>
handled = 0
__func__ = {<optimized out> <repeats 26 times>}
#53 0x00007ffff69f2ee8 in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x4652d10) at ../gtk/gtkmain.c:2588
tmp = <optimized out>
handled_event = <optimized out>
#54 propagate_event (widget=<optimized out>, event=0x44265c0, captured=<optimized out>, topmost=0x0) at ../gtk/gtkmain.c:2691
handled_event = 0
propagate_func = <optimized out>
#55 0x00007ffff69f3c2a in gtk_main_do_event (event=<optimized out>) at ../gtk/gtkmain.c:1921
grab_widget = 0x4652d10
window_group = 0x1538490
rewritten_event = <optimized out>
device = <optimized out>
tmp_list = <optimized out>
event_widget = <optimized out>
topmost_widget = <optimized out>
event_widget = <optimized out>
grab_widget = <optimized out>
topmost_widget = <optimized out>
window_group = <optimized out>
rewritten_event = <optimized out>
device = <optimized out>
tmp_list = <optimized out>
cleanup = <optimized out>
__func__ = {<optimized out> <repeats 18 times>}
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
window = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
mnemonics_visible = <optimized out>
window = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
#56 gtk_main_do_event (event=<optimized out>) at ../gtk/gtkmain.c:1691
event_widget = <optimized out>
window_group = <optimized out>
device = <optimized out>
tmp_list = <optimized out>
cleanup = <optimized out>
__func__ = "gtk_main_do_event"
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
window = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
mnemonics_visible = <optimized out>
window = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
#57 0x00007ffff7054457 in _gdk_event_emit (event=0x44265c0) at ../gdk/gdkevents.c:73
#58 _gdk_event_emit (event=0x44265c0) at ../gdk/gdkevents.c:67
#59 0x00007ffff708d90e in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at ../gdk/wayland/gdkeventsource.c:124
source = <optimized out>
display = <optimized out>
event = 0x44265c0
#60 0x00007ffff794e26c in g_main_dispatch (context=0xe1f040) at ../glib/gmain.c:3344
dispatch = 0x7ffff708d8e0 <gdk_event_source_dispatch>
prev_source = 0x0
begin_time_nsec = 458234687933
was_in_call = 0
user_data = 0x0
callback = 0x0
cb_funcs = 0x0
cb_data = 0x0
need_destroy = <optimized out>
source = 0xf04540
current = 0xe25f50
i = <optimized out>
__func__ = {<optimized out> <repeats 16 times>}
#61 g_main_context_dispatch_unlocked (context=0xe1f040) at ../glib/gmain.c:4152
#62 0x00007ffff79af2a8 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0xe1f040, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at ../glib/gmain.c:4217
max_priority = 2147483647
timeout = 341
some_ready = 1
nfds = 4
allocated_nfds = <optimized out>
fds = 0x300e2c0
begin_time_nsec = 458229493277
#63 0x00007ffff794f6e3 in g_main_context_iteration (context=context@entry=0xe1f040, may_block=may_block@entry=1) at ../glib/gmain.c:4282
retval = <optimized out>
#64 0x00007ffff754537d in g_application_run (application=0xef4920, argc=<optimized out>, argv=0x0) at ../gio/gapplication.c:2613
arguments = 0x11b9e20
status = 0
context = 0xe1f040
acquired_context = <optimized out>
__func__ = "g_application_run"
#65 0x00000000007efebc in app_run
(full_prog_name=0xe03a20 "/home/ak/coding/gimp299install/bin/gimp-2.99", filenames=0x0, alternate_system_gimprc=0x0, alternate_gimprc=0x0, session_name=0x0, batch_interpreter=0x0, 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=0xde7ef0 "/home/ak/.config/GIMP/2.99/CrashLog/gimp-crash-1707405087.txt") at ../app/app.c:317
gimp = 0xf928e0
app = 0xef4920
default_folder = 0x0
gimpdir = 0x11108e0
abort_message = 0x0
retval = 0
__func__ = "app_run"
#66 0x0000000000518403 in main (argc=1, argv=0xe03620) at ../app/main.c:786
context = 0xe03a80
error = 0x0
abort_message = 0x0
basename = 0xe03a60 "[FILE|URI...]"
system_gimprc_file = 0x0
user_gimprc_file = 0x0
gimp_group = 0xe04130
backtrace_file = 0xde7ef0 "/home/ak/.config/GIMP/2.99/CrashLog/gimp-crash-1707405087.txt"
retval = 0
i = 1
(gdb) c
Continuing.
(gimp-2.99:3785): GLib-GObject-CRITICAL **: 16:13:59.650: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Thread 1 "gimp-2.99" received signal SIGTRAP, Trace/breakpoint trap.
_g_log_abort (breakpoint=<optimized out>) at ../glib/gmessages.c:426
426 in ../glib/gmessages.c
(gdb)
Edited by Andre Klapper