Image rendering broken in Inkscape and emacs after update

When starting inkscape, the greeting menu opens fine, but when opening an existing or new document, inkscape crashes with the following message:

** (org.inkscape.Inkscape:77666): ERROR **: 16:12:36.757:
unhandled exception (type std::exception) in signal handler:
what: std::bad_alloc

fish: Job 1, 'inkscape' terminated by signal SIGTRAP (Trace or breakpoint trap)

This is a cross-post for the issue nixpkgs/#429486 (inkscape broken), and I provide extensive log files and a gdb stacktrace of the crash there.

I also just noticed that my emacs does not display SVG images anymore, so the issue is likely more global and not caused by inkscape in particular.

I am a bit lost and would appreciate any help in identfying the cause.

UPDATE: I tried the following without success:

  • Delete ~/.config/inkscape
  • Delete ~/.cache
  • Boot into an old nixos generation (where inkscape previously worked!)

The last point bears the question what other states can I “reset” to try make it work again?

Update:

I compiled inkscape with debug symbols, which points to a wrong initialization of GTK_IM_MODULE (note the insanely high _M_allocated_capacity = 517349139302). Do you have an idea where to look further?

Thread 1 (Thread 0xfffff5ab8020 (LWP 359199) ".inkscape-wrapp"):
#0  0x0000fffff25b1454 in __pthread_kill_implementation () from /nix/store/r7pnxs3cfl3qxwacj38iakpm5v1ch6lz-glibc-2.40-66/lib/libc.so.6
No symbol table info available.
#1  0x0000fffff255b75c in raise () from /nix/store/r7pnxs3cfl3qxwacj38iakpm5v1ch6lz-glibc-2.40-66/lib/libc.so.6
No symbol table info available.
#2  0x0000fffff5311398 in g_log_default_handler () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libglib-2.0.so.0
No symbol table info available.
#3  0x0000fffff53116b0 in g_logv () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libglib-2.0.so.0
--Type <RET> for more, q to quit, c to continue without paging--
No symbol table info available.
#4  0x0000fffff5311954 in g_log () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libglib-2.0.so.0
No symbol table info available.
#5  0x0000fffff3e9b99c in Glib::exception_handlers_invoke() () from /nix/store/hw6q9k9rsvrrf3kijnmcbc4c9gl5flxr-glibmm-2.66.8/lib/libglibmm-2.4.so.1
No symbol table info available.
#6  0x0000fffff3ea4c60 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () from /nix/store/hw6q9k9rsvrrf3kijnmcbc4c9gl5flxr-glibmm-2.66.8/lib/libglibmm-2.4.so.1
No symbol table info available.
#7  0x0000fffff5ad9858 in g_closure_invoke () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgobject-2.0.so.0
No symbol table info available.
#8  0x0000fffff5af0fd4 in signal_emit_unlocked_R.isra.0 () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgobject-2.0.so.0
No symbol table info available.
#9  0x0000fffff5af274c in signal_emit_valist_unlocked () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgobject-2.0.so.0
No symbol table info available.
#10 0x0000fffff5af82b4 in g_signal_emit_valist () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgobject-2.0.so.0
No symbol table info available.
#11 0x0000fffff5af836c in g_signal_emit () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgobject-2.0.so.0
No symbol table info available.
#12 0x0000fffff33bfbb8 in g_application_real_local_command_line () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgio-2.0.so.0
No symbol table info available.
#13 0x0000fffff33bfd40 in g_application_run () from /nix/store/wl3p1w24bp2lzg1h3ijg1zfjq3m9i5v8-glib-2.84.3/lib/libgio-2.0.so.0
No symbol table info available.
#14 0x00000000004047d4 in main (argc=<optimized out>, argv=<optimized out>) at /nix/store/q6fgwyaj8f7ax8fv1xmyac1lx0vjqcpf-glibmm-2.66.8-dev/include/glibmm-2.4/glibmm/refptr.h:405
        varname = 0x406120 "GTK_IM_MODULE"
        gtk_im_module = {_M_dataplus = {<std::allocator<char>> = {<std::__new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xffffffffd5e0 "fcitx"}, _M_string_length = 5, {_M_local_buf = "fcitx\000\000\000\334\032\222\362\377\377\000", _M_allocated_capacity = 517349139302}}
        ret = <optimized out>

Resolved it after some more hours of trying and debugging: A corrupted svg was in my .local/share/recently-used.xbel, which made inkscape crash because it looks at these files when loading its “Open recently used” menu. What a nightmare. Thanks for everyone checking in

1 Like