then the problem goes away. So there appears to be an issue with clipping, probably an infinite loop.
Using gdb and hitting control-C while stuck after loading the toxic one, bt always showed this:
#0 0x00132416 in __kernel_vsyscall ()
#1 0x019da460 in __GI___poll (fds=0xbfffeed8, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#2 0x01d28120 in ?? () from /usr/lib/i386-linux-gnu/libxcb.so.1
#3 0x01d29a60 in ?? () from /usr/lib/i386-linux-gnu/libxcb.so.1
#4 0x01d29d17 in xcb_wait_for_reply () from /usr/lib/i386-linux-gnu/libxcb.so.1
#5 0x014b1682 in _XReply () from /usr/lib/i386-linux-gnu/libX11.so.6
#6 0x014a6d23 in XQueryPointer () from /usr/lib/i386-linux-gnu/libX11.so.6
#7 0x00a10199 in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#8 0x009bb0ae in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#9 0x009deba7 in gdk_window_get_pointer () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#10 0x08304765 in SPCanvasImpl::sp_canvas_paint_rect (canvas=0x9fd7040, xx0=32, yy0=-480, xx1=176, yy1=-384) at display/sp-canvas.cpp:2103
#11 0x08304d36 in SPCanvasImpl::paint (canvas=0x9fd7040) at display/sp-canvas.cpp:2260
#12 0x08304e67 in SPCanvasImpl::do_update (canvas=0x9fd7040) at display/sp-canvas.cpp:2295
#13 0x08304ed8 in SPCanvasImpl::idle_handler (data=0x9fd7040) at display/sp-canvas.cpp:2311
#14 0x009b8f88 in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#15 0x01315810 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#16 0x01317d46 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#17 0x013180e5 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#18 0x0131852b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#19 0x00671b8f in gtk_main () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00302194 in Gtk::Main::run_impl() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#21 0x00302bcf in Gtk::Main::run() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#22 0x08087888 in sp_main_gui (argc=1, argv=0xbffff6d4) at main.cpp:1097
#23 0x08086ef0 in main (argc=1, argv=0xbffff6d4) at main.cpp:812
When inkscape was running normally with a nontoxic version of the same image this was never seen. Those always looked like this:
#0 0x00132416 in __kernel_vsyscall ()
#1 0x019da460 in __GI___poll (fds=0xb7a97e0, nfds=3, timeout=33) at ../sysdeps/unix/sysv/linux/poll.c:87
#2 0x01325a3b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3 0x0131806e in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4 0x0131852b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5 0x00671b8f in gtk_main () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#6 0x00302194 in Gtk::Main::run_impl() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#7 0x00302bcf in Gtk::Main::run() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#8 0x08087888 in sp_main_gui (argc=1, argv=0xbffff6d4) at main.cpp:1097
#9 0x08086ef0 in main (argc=1, argv=0xbffff6d4) at main.cpp:812
I have narrowed the problem down to a couple of lines in one of the toxic SVGs, attached.
If this
<g id="g26"
clip- path="url( #clipPath16) ">
id="path30"
style= "fill:# 000000; fill-opacity: 1;fill- rule:nonzero; stroke: none"
<path
d="m 0,150 100,0 0,-200 -100,0 0,200 z" />
</g>
is changed to just
<path
id="path30"
style= "fill:# 000000; fill-opacity: 1;fill- rule:nonzero; stroke: none"
d="m 0,150 100,0 0,-200 -100,0 0,200 z" />
then the problem goes away. So there appears to be an issue with clipping, probably an infinite loop.
Using gdb and hitting control-C while stuck after loading the toxic one, bt always showed this:
#0 0x00132416 in __kernel_vsyscall () unix/sysv/ linux/poll. c:87 i386-linux- gnu/libxcb. so.1 i386-linux- gnu/libxcb. so.1 i386-linux- gnu/libxcb. so.1 i386-linux- gnu/libX11. so.6 i386-linux- gnu/libX11. so.6 i386-linux- gnu/libgdk- x11-2.0. so.0 i386-linux- gnu/libgdk- x11-2.0. so.0 get_pointer () from /usr/lib/ i386-linux- gnu/libgdk- x11-2.0. so.0 :sp_canvas_ paint_rect (canvas=0x9fd7040, xx0=32, yy0=-480, xx1=176, yy1=-384) at display/ sp-canvas. cpp:2103 sp-canvas. cpp:2260 :do_update (canvas=0x9fd7040) at display/ sp-canvas. cpp:2295 :idle_handler (data=0x9fd7040) at display/ sp-canvas. cpp:2311 i386-linux- gnu/libgdk- x11-2.0. so.0 linux-gnu/ libglib- 2.0.so. 0 context_ dispatch () from /lib/i386- linux-gnu/ libglib- 2.0.so. 0 linux-gnu/ libglib- 2.0.so. 0 linux-gnu/ libglib- 2.0.so. 0 i386-linux- gnu/libgtk- x11-2.0. so.0 :run_impl( ) () from /usr/lib/ i386-linux- gnu/libgtkmm- 2.4.so. 1 i386-linux- gnu/libgtkmm- 2.4.so. 1
#1 0x019da460 in __GI___poll (fds=0xbfffeed8, nfds=1, timeout=-1) at ../sysdeps/
#2 0x01d28120 in ?? () from /usr/lib/
#3 0x01d29a60 in ?? () from /usr/lib/
#4 0x01d29d17 in xcb_wait_for_reply () from /usr/lib/
#5 0x014b1682 in _XReply () from /usr/lib/
#6 0x014a6d23 in XQueryPointer () from /usr/lib/
#7 0x00a10199 in ?? () from /usr/lib/
#8 0x009bb0ae in ?? () from /usr/lib/
#9 0x009deba7 in gdk_window_
#10 0x08304765 in SPCanvasImpl:
#11 0x08304d36 in SPCanvasImpl::paint (canvas=0x9fd7040) at display/
#12 0x08304e67 in SPCanvasImpl:
#13 0x08304ed8 in SPCanvasImpl:
#14 0x009b8f88 in ?? () from /usr/lib/
#15 0x01315810 in ?? () from /lib/i386-
#16 0x01317d46 in g_main_
#17 0x013180e5 in ?? () from /lib/i386-
#18 0x0131852b in g_main_loop_run () from /lib/i386-
#19 0x00671b8f in gtk_main () from /usr/lib/
#20 0x00302194 in Gtk::Main:
#21 0x00302bcf in Gtk::Main::run() () from /usr/lib/
#22 0x08087888 in sp_main_gui (argc=1, argv=0xbffff6d4) at main.cpp:1097
#23 0x08086ef0 in main (argc=1, argv=0xbffff6d4) at main.cpp:812
When inkscape was running normally with a nontoxic version of the same image this was never seen. Those always looked like this:
#0 0x00132416 in __kernel_vsyscall () unix/sysv/ linux/poll. c:87 linux-gnu/ libglib- 2.0.so. 0 linux-gnu/ libglib- 2.0.so. 0 linux-gnu/ libglib- 2.0.so. 0 i386-linux- gnu/libgtk- x11-2.0. so.0 :run_impl( ) () from /usr/lib/ i386-linux- gnu/libgtkmm- 2.4.so. 1 i386-linux- gnu/libgtkmm- 2.4.so. 1
#1 0x019da460 in __GI___poll (fds=0xb7a97e0, nfds=3, timeout=33) at ../sysdeps/
#2 0x01325a3b in g_poll () from /lib/i386-
#3 0x0131806e in ?? () from /lib/i386-
#4 0x0131852b in g_main_loop_run () from /lib/i386-
#5 0x00671b8f in gtk_main () from /usr/lib/
#6 0x00302194 in Gtk::Main:
#7 0x00302bcf in Gtk::Main::run() () from /usr/lib/
#8 0x08087888 in sp_main_gui (argc=1, argv=0xbffff6d4) at main.cpp:1097
#9 0x08086ef0 in main (argc=1, argv=0xbffff6d4) at main.cpp:812