GIMP-CRITICAL: gimp_palette_restrict_format: assertion 'GIMP_IS_PALETTE (palette)' failed
Environment/Versions
- GIMP version: 2.99.19 (d4b1df90)
- Package: git
- Operating System: Linux Ubuntu 24.04.01
Description of the bug
"GIMP Debug" (see below) error pops up when converting image mode from Indexed to RGB.
Reproduction
Is the bug reproducible? Always
Reproduction steps:
- Open or create image with color palette
- change image mode to RGB
GNU Image Manipulation Program version 2.99.19
git-describe: GIMP_2_99_18-1636-gd4b1df9046
Build: unknown rev 0 for linux
# C compiler #
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.2.0-23ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --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 --enable-cet --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-13-uJ7kn6/gcc-13-13.2.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-uJ7kn6/gcc-13-13.2.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.2.0 (Ubuntu 13.2.0-23ubuntu4)
# 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.80.0 (compiled against version 2.80.0)
using GdkPixbuf version 2.42.10 (compiled against version 2.42.10)
using GTK+ version 3.24.41 (compiled against version 3.24.41)
using Pango version 1.52.1 (compiled against version 1.52.1)
using Fontconfig version 2.15.0 (compiled against version 2.15.0)
using Cairo version 1.18.0 (compiled against version 1.18.0)
using gexiv2 version 0.14.2 (compiled against version 0.14.2)
using exiv2 version 0.27.6
GIMP-CRITICAL: gimp_palette_restrict_format: assertion 'GIMP_IS_PALETTE (palette)' failed
Stack trace:
# Stack traces obtained from PID 12939 - Thread 12939 #
[New LWP 13193]
[New LWP 13176]
[New LWP 13041]
[New LWP 13038]
[New LWP 12956]
[New LWP 12952]
[New LWP 12950]
[New LWP 12949]
[New LWP 12948]
[New LWP 12947]
[New LWP 12946]
[New LWP 12945]
[New LWP 12944]
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.ubuntu.com>
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007ded2731ba9a in __GI___libc_read (nbytes=255, buf=0x7fff52c642d0, fd=31) at ../sysdeps/unix/sysv/linux/read.c:26
Id Target Id Frame
* 1 Thread 0x7ded2556d1c0 (LWP 12939) "gimp-2.99" 0x00007ded2731ba9a in __GI___libc_read (nbytes=255, buf=0x7fff52c642d0, fd=31) at ../sysdeps/unix/sysv/linux/read.c:26
2 Thread 0x7decebe006c0 (LWP 13193) "swap writer" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
3 Thread 0x7ded02a006c0 (LWP 13176) "pool-gimp-2.99" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
4 Thread 0x7ded00c006c0 (LWP 13041) "threaded-ml" 0x00007ded2731b4cd in __GI___poll (fds=0x7decc00071a0, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
5 Thread 0x7ded016006c0 (LWP 13038) "dconf worker" 0x00007ded2731b4cd in __GI___poll (fds=0x7decc8000b90, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
6 Thread 0x7ded03e006c0 (LWP 12956) "gimp-2.99" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
7 Thread 0x7ded0fe006c0 (LWP 12952) "gimp-2.99" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
8 Thread 0x7ded194006c0 (LWP 12950) "async" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
9 Thread 0x7ded1aa006c0 (LWP 12949) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
10 Thread 0x7ded1b4006c0 (LWP 12948) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
11 Thread 0x7ded1be006c0 (LWP 12947) "worker" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
12 Thread 0x7ded212006c0 (LWP 12946) "gdbus" 0x00007ded2731b4cd in __GI___poll (fds=0x7ded10019ed0, nfds=8, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
13 Thread 0x7ded21c006c0 (LWP 12945) "gmain" 0x00007ded2731b4cd in __GI___poll (fds=0x5f38b8f4c100, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
14 Thread 0x7ded226006c0 (LWP 12944) "pool-spawner" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#0 0x00007ded2731ba9a in __GI___libc_read (nbytes=255, buf=0x7fff52c642d0, fd=31) at ../sysdeps/unix/sysv/linux/read.c:26
sc_ret = -512
sc_cancel_oldtype = 0
sc_ret = <optimized out>
sc_ret = <optimized out>
__arg2 = <optimized out>
_a3 = <optimized out>
_a1 = <optimized out>
resultvar = <optimized out>
__arg3 = <optimized out>
__arg1 = <optimized out>
_a2 = <optimized out>
#1 __GI___libc_read (fd=31, buf=buf@entry=0x7fff52c642d0, nbytes=nbytes@entry=255) at ../sysdeps/unix/sysv/linux/read.c:24
#2 0x00007ded28de812e in read (__nbytes=255, __buf=0x7fff52c642d0, __fd=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/unistd.h:28
#3 gimp_stack_trace_print (prog_name=prog_name@entry=0x0, stream=stream@entry=0x0, trace=trace@entry=0x7fff52c64438) at ../libgimpbase/gimputils.c:1394
status = 32767
stack_printed = 0
gtrace = 0x0
gimp_pid = "12939\000\000\000\000|\363\2708_\000"
buffer = "\3007$\2718_\000\000\340C\306R\377\177\000\000\000C\306R\377\177\000\000\365b\322(\355}\000\000\3007$\2718_\000\000\000\261\023\223\226\214h\312\320C\306R\377\177\000\000\340|\363\2708_\000\000\006\000\000\000\000\000\000\000\370C\306R\377\177\000\000\353\024\361\2708_\000\000@C\306R\377\177\000\000\200D\306R\377\177\000\000Y\321#'\355}\000\000C\000_US.UTF-8\000\000\000\000\000s\v;'\355}\000\000\307\320#'\355}\000\000LC_MESSAGES/gimp30.mo\000\000\0008\320#'\355}\000\000\000\000\000\000\000\000\000\000@C\306R\377\177\000\000\353\024\361\2708_\000\000"...
read_n = <optimized out>
sync_fd = {27, 30}
out_fd = {31, 32}
fork_pid = <optimized out>
pid = 12939
eintr_count = 0
tid = <optimized out>
#4 0x00005f38b7eb1c1d in gui_message (gimp=0x5f38b90de920, handler=0x0, severity=GIMP_MESSAGE_BUG_CRITICAL, domain=0x5f38b80e42b7 "GIMP", message=0x5f38bceeba00 "gimp_palette_restrict_format: assertion 'GIMP_IS_PALETTE (palette)' failed") at ../app/gui/gui-message.c:141
trace = 0x0
gen_trace = 1
#5 0x00005f38b7cf2156 in gimp_show_message (gimp=gimp@entry=0x5f38b90de920, handler=handler@entry=0x0, severity=GIMP_MESSAGE_BUG_CRITICAL, domain=0x5f38b80e42b7 "GIMP", domain@entry=0x0, message=message@entry=0x5f38bceeba00 "gimp_palette_restrict_format: assertion 'GIMP_IS_PALETTE (palette)' failed") at ../app/core/gimp-gui.c:160
desc = 0x5f38b80f90e4 "Message"
__func__ = "gimp_show_message"
#6 0x00005f38b7e5eb67 in gimp_message_log_func (log_domain=0x5f38b80db360 "Gimp-Core", flags=<optimized out>, message=0x5f38bceeba00 "gimp_palette_restrict_format: assertion 'GIMP_IS_PALETTE (palette)' failed", data=0x5f38b90de920) at ../app/errors.c:263
gimp = 0x5f38b90de920
config = 0x5f38b906ec00
msg_domain = 0x0
severity = <optimized out>
gui_message = <optimized out>
debug_policy = GIMP_DEBUG_POLICY_WARNING
#7 0x00007ded287d5670 in g_logv () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007ded287d5953 in g_log () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9 0x00005f38b7d282d5 in gimp_image_colormap_update_formats (image=0x5f38bd0391c0) at ../app/core/gimpimage-colormap.c:165
private = 0x5f38bd038f10
space = <optimized out>
format = 0x5f38b8f86990
format_name = 0x5f38bcd4f530 "-gimp-indexed-format-1"
private = <optimized out>
space = <optimized out>
format = <optimized out>
format_name = <optimized out>
__func__ = "gimp_image_colormap_update_formats"
_g_boolean_var_16 = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
colormap = <optimized out>
n_colors = <optimized out>
_g_boolean_var_17 = <optimized out>
#10 gimp_image_colormap_update_formats (image=0x5f38bd0391c0) at ../app/core/gimpimage-colormap.c:144
private = <optimized out>
space = <optimized out>
format = <optimized out>
format_name = <optimized out>
__func__ = "gimp_image_colormap_update_formats"
colormap = <optimized out>
n_colors = <optimized out>
_g_boolean_var_17 = <optimized out>
#11 0x00005f38b7cb4236 in gimp_image_real_colormap_changed (image=0x5f38bd0391c0, color_index=<optimized out>) at ../app/core/gimpimage.c:1416
private = 0x5f38bd038f10
#12 0x00007ded28cfa2fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ded28d29a50 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ded28d1a591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ded28d1a7c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ded28d1a883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00005f38b7e85b45 in gimp_image_convert_type (image=image@entry=0x5f38bd0391c0, new_type=new_type@entry=GIMP_RGB, dest_profile=<optimized out>, dest_profile@entry=0x0, progress=0x5f38bceeb680, progress@entry=0x0, error=error@entry=0x7fff52c64cf0) at ../app/core/gimpimage-convert-type.c:145
src_profile = 0x5f38bbfa46f0
old_type = GIMP_INDEXED
new_layer_format = <optimized out>
queue = 0x5f38bceeb680
all_layers = <optimized out>
drawable = 0x0
undo_desc = <optimized out>
__func__ = "gimp_image_convert_type"
#18 0x00005f38b7fff2e7 in image_convert_base_type_cmd_callback (action=<optimized out>, value=<optimized out>, data=<optimized out>) at ../app/actions/image-commands.c:321
image = 0x5f38bd0391c0
display = 0x5f38b91e04e0
widget = 0x5f38bbfa7480
config = <optimized out>
dialog = 0x0
base_type = GIMP_RGB
error = 0x0
#19 0x00007ded28cfa2fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007ded28d2990c in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007ded28d1a591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ded28d1aa98 in g_signal_emit_by_name () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00005f38b7f2a567 in gimp_action_emit_change_state (action=0x5f38bb691e60, value=0x5f38bcda9090) at ../app/widgets/gimpaction.c:267
__func__ = "gimp_action_emit_change_state"
#24 0x00005f38b7f8628f in gimp_radio_action_set_current_value (current_value=0, action=<optimized out>) at ../app/widgets/gimpradioaction.c:581
slist = 0x5f38bb691ca0 = {0x5f38bb691e60}
changed1 = 0x5f38bb691e60
changed2 = <optimized out>
slist = <optimized out>
changed1 = <optimized out>
changed2 = <optimized out>
__func__ = "gimp_radio_action_set_current_value"
_g_boolean_var_21 = <optimized out>
__inst = <optimized out>
__t = <optimized out>
__r = <optimized out>
toggle = <optimized out>
radio = <optimized out>
#25 gimp_radio_action_set_current_value (action=<optimized out>, current_value=0) at ../app/widgets/gimpradioaction.c:523
slist = <optimized out>
__func__ = "gimp_radio_action_set_current_value"
toggle = <optimized out>
radio = <optimized out>
#26 0x00005f38b7f86467 in gimp_radio_action_toggle (action=0x5f38bb691e60) at ../app/widgets/gimpradioaction.c:382
radio = 0x5f38bb691e60
active = <optimized out>
active = <optimized out>
radio = <optimized out>
#27 gimp_radio_action_toggle (action=0x5f38bb691e60) at ../app/widgets/gimpradioaction.c:374
active = <optimized out>
radio = <optimized out>
#28 0x00005f38b7f98455 in gimp_toggle_action_toggle (action=0x5f38bb691e60) at ../app/widgets/gimptoggleaction.c:226
#29 gimp_toggle_action_set_active (action=0x5f38bb691e60, active=<optimized out>) at ../app/widgets/gimptoggleaction.c:269
#30 0x00005f38b7fc0b31 in gimp_menu_toggle_item_toggled (item=0x5f38bbc65de0, action=0x5f38bb691e60) at ../app/widgets/gimpmenu.c:715
active = 1
#31 0x00007ded28cfa2fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#32 0x00007ded28d2990c in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#33 0x00007ded28d1a591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#34 0x00007ded28d1a7c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#35 0x00007ded28d1a883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#36 0x00007ded27a644ea in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#37 0x00007ded28cfa2fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#38 0x00007ded28d29a50 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#39 0x00007ded28d1a591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#40 0x00007ded28d1a7c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#41 0x00007ded28d1a883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#42 0x00007ded27b59ccc in gtk_widget_activate () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#43 0x00007ded27a1ab06 in gtk_menu_shell_activate_item () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#44 0x00007ded27a1af21 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#45 0x00007ded278982f7 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#46 0x00007ded28d1a6bd in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#47 0x00007ded28d1a7c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#48 0x00007ded28d1a883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#49 0x00007ded27b66b64 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#50 0x00007ded27a03310 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#51 0x00007ded27a03eaa in gtk_main_do_event () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#52 0x00007ded2773f407 in ??? () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#53 0x00007ded27798c6e in ??? () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#54 0x00007ded287d05b5 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007ded2882f717 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007ded287cfa53 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007ded2856988d in g_application_run () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#58 0x00005f38b7e5e8ce in app_run (full_prog_name=0x5f38b8f386b0 "/usr/local/bin/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=<optimized out>, no_fonts=<optimized out>, 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=<optimized out>, backtrace_file=0x5f38b8f2dc40 "/home/rw/.config/GIMP/2.99/CrashLog/gimp-crash-1728115404.txt") at ../app/app.c:323
gimp = 0x5f38b90de920
app = 0x5f38b903b310
default_folder = 0x0
gimpdir = 0x5f38b923ee10
abort_message = <optimized out>
retval = 0
__func__ = "app_run"
#59 0x00005f38b7c8d897 in main (argc=<optimized out>, argv=<optimized out>) at ../app/main.c:786
context = 0x5f38b8f386e0
error = 0x0
abort_message = <optimized out>
basename = <optimized out>
system_gimprc_file = 0x0
user_gimprc_file = 0x0
gimp_group = <optimized out>
backtrace_file = 0x5f38b8f2dc40 "/home/rw/.config/GIMP/2.99/CrashLog/gimp-crash-1728115404.txt"
retval = <optimized out>
i = <optimized out>
[Inferior 1 (process 12939) detached]