After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 591766 - librsvg 2.26.0 and its gdk loader crashes, derived programs either don't display SVG files or segfault
librsvg 2.26.0 and its gdk loader crashes, derived programs either don't disp...
Status: RESOLVED FIXED
Product: librsvg
Classification: Core
Component: general
2.26.x
Other Linux
: Normal critical
: ---
Assigned To: librsvg maintainers
librsvg maintainers
Depends on:
Blocks:
 
 
Reported: 2009-08-14 04:13 UTC by Arets Paeglis
Modified: 2011-11-09 20:15 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (644 bytes, patch)
2009-08-25 20:37 UTC, Christian Persch
committed Details | Review

Description Arets Paeglis 2009-08-14 04:13:16 UTC
Steps to reproduce:
1. Trying to run any program that depends on librsvg library (triggers the "cannot display" case)
2. Trying to open SVG file with rsvg-view (which displays it correctly) and then save it (which crashes it with a segmentation fault)


Stack trace:
Replication of "rsvg-view crashes" condition:

root [ ~ ]# gdb /usr/bin/rsvg-view 
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) r /src/librsvg-2.26.0/data/svg-viewer.svg 
Starting program: /usr/bin/rsvg-view /src/librsvg-2.26.0/data/svg-viewer.svg
[Thread debugging using libthread_db enabled]
[New Thread 0xb70a66d0 (LWP 10180)]
/usr/share/themes/Clearlooks-Quicksilver/gtk-2.0/gtkrc:44: Clearlooks configuration option "menuitemstyle" is not supported and will be ignored.
/usr/share/themes/Clearlooks-Quicksilver/gtk-2.0/gtkrc:45: Clearlooks configuration option "listviewitemstyle" is not supported and will be ignored.
/usr/share/themes/Clearlooks-Quicksilver/gtk-2.0/gtkrc:46: Clearlooks configuration option "progressbarstyle" is not supported and will be ignored.
[New Thread 0xb58ceb90 (LWP 10187)]
[New Thread 0xb50c0b90 (LWP 10188)]
[Thread 0xb50c0b90 (LWP 10188) exited]
*** glibc detected *** /usr/bin/rsvg-view: free(): invalid pointer: 0x097cedb9 ***
======= Backtrace: =========
/lib/libc.so.6[0xb714f1c5]
/lib/libc.so.6(cfree+0x9c)[0xb7150b3c]
/usr/lib/libglib-2.0.so.0(g_free+0x36)[0xb7295d46]
/usr/bin/rsvg-view[0x804c6ef]
/usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x84)[0xb73292c4]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1b3)[0xb731b453]
/usr/lib/libgobject-2.0.so.0[0xb7332a1f]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x7cb)[0xb733406b]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x26)[0xb7334506]
/usr/lib/libgtk-x11-2.0.so.0(gtk_widget_activate+0x87)[0xb7f22767]
/usr/lib/libgtk-x11-2.0.so.0(gtk_menu_shell_activate_item+0x120)[0xb7df5160]
/usr/lib/libgtk-x11-2.0.so.0[0xb7df734f]
/usr/lib/libgtk-x11-2.0.so.0[0xb7dead00]
/usr/lib/libgtk-x11-2.0.so.0[0xb7de3322]
/usr/lib/libgobject-2.0.so.0[0xb7319bc9]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1b3)[0xb731b453]
/usr/lib/libgobject-2.0.so.0[0xb73326a7]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x67f)[0xb7333f1f]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x26)[0xb7334506]
/usr/lib/libgtk-x11-2.0.so.0[0xb7f1b08e]
/usr/lib/libgtk-x11-2.0.so.0(gtk_propagate_event+0x11a)[0xb7ddabba]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main_do_event+0x317)[0xb7ddc157]
/usr/lib/libgdk-x11-2.0.so.0[0xb7c329aa]
/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x1f1)[0xb728dbe1]
/usr/lib/libglib-2.0.so.0[0xb7291343]
/usr/lib/libglib-2.0.so.0(g_main_loop_run+0x1ca)[0xb729181a]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xb9)[0xb7ddc659]
/usr/bin/rsvg-view[0x804bc1c]
/lib/libc.so.6(__libc_start_main+0xe5)[0xb70fa5c5]
/usr/bin/rsvg-view[0x804a8b1]
======= Memory map: ========
08048000-0804d000 r-xp 00000000 03:01 647370     /usr/bin/rsvg-view
0804d000-0804e000 rw-p 00005000 03:01 647370     /usr/bin/rsvg-view
096aa000-098ce000 rw-p 096aa000 00:00 0          [heap]
b4700000-b4721000 rw-p b4700000 00:00 0 
b4721000-b4800000 ---p b4721000 00:00 0 
b48b1000-b48c0000 r--p 00000000 03:01 2113593    /usr/share/fonts/VeraBd.ttf
b48c0000-b48c1000 ---p b48c0000 00:00 0 
b48c1000-b50c1000 rw-p b48c1000 00:00 0 
b50c1000-b50ce000 r--p 00000000 03:01 2113599    /usr/share/fonts/VeraMono.ttf
b50ce000-b50cf000 ---p b50ce000 00:00 0 
b50cf000-b58cf000 rw-p b50cf000 00:00 0 
b58cf000-b592f000 rw-s 00000000 00:08 3407877    /SYSV00000000 (deleted)
b592f000-b598f000 rw-s 00000000 00:08 3375108    /SYSV00000000 (deleted)
b598f000-b59a0000 r--p 00000000 03:01 2113602    /usr/share/fonts/Vera.ttf
b59a0000-b59a2000 r-xp 00000000 03:01 2851890    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59a2000-b59a3000 rw-p 00001000 03:01 2851890    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
b59a3000-b59a6000 r--s 00000000 03:01 1966202    /var/cache/fontconfig/42a734a5c65ad25b3cd3597802f6d966-x86.cache-2
b59a6000-b59a7000 r--s 00000000 03:01 1966223    /var/cache/fontconfig/e4b90e8307f485c87c3ac55503f482d7-x86.cache-2
b59a7000-b59a8000 r--s 00000000 03:01 1966199    /var/cache/fontconfig/34c758d689bd8c633c4ee8376f9d7d59-x86.cache-2
b59a8000-b59b0000 r--s 00000000 03:01 1966198    /var/cache/fontconfig/1d895849f8899a6a8224e68fca9fdd57-x86.cache-2
b59b0000-b59b3000 r--s 00000000 03:01 1966217    /var/cache/fontconfig/d326d4054061cd018e11233726f6ea0a-x86.cache-2
b59b3000-b59b5000 r--s 00000000 03:01 1966212    /var/cache/fontconfig/b78d8aafacc8917812b4061827666f7b-x86.cache-2
b59b5000-b59b8000 r--s 00000000 03:01 1966206    /var/cache/fontconfig/647a7138065d01e90f3f8a49ae9b2a27-x86.cache-2
b59b8000-b59ba000 r--s 00000000 03:01 1966210    /var/cache/fontconfig/a8d58dbc6951106a3f4e965a3bb93aa8-x86.cache-2
b59ba000-b59bd000 r--s 00000000 03:01 1966203    /var/cache/fontconfig/448403a9a0a860d09c2730bf5ccd50ef-x86.cache-2
b59bd000-b59be000 r--s 00000000 03:01 1966213    /var/cache/fontconfig/c37613e2604bdd41c402e32d2821e076-x86.cache-2
b59be000-b59bf000 r--s 00000000 03:01 1966225    /var/cache/fontconfig/e8b92f39ad755a7550b66023361e1ae3-x86.cache-2
b59bf000-b59c7000 r--s 00000000 03:01 1966196    /var/cache/fontconfig/192627b4207311a1162828d4ef2291ab-x86.cache-2
b59c7000-b59c9000 r--s 00000000 03:01 1966226    /var/cache/fontconfig/eafbf1d6d4bcbee3fe8062da09e8c9b7-x86.cache-2
b59c9000-b59dc000 r--s 00000000 03:01 1966220    /var/cache/fontconfig/d6f9921612f8ddbea3b9a1d574077d1e-x86.cache-2
b59dc000-b5a0a000 r--s 00000000 03:01 1966319    /var/cache/fontconfig/3830d5c3ddfd5cd38a049b759396e72e-x86.cache-2
b5a0a000-b680d000 r--p 00000000 03:01 3133244    /usr/share/icons/hicolor/icon-theme.cache
b680d000-b6e4c000 r--p 00000000 03:01 679955     /usr/share/icons/gnome/icon-theme.cache
b6e4c000-b6e75000 r-xp 00000000 03:01 1679380    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
b6e75000-b6e76000 rw-p 00028000 03:01 1679380    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
b6e76000-b6e7f000 r-xp 00000000 03:01 2953499    /lib/libnss_files-2.8.so
b6e7f000-b6e81000 rw-p 00008000 03:01 2953499    /lib/libnss_files-2.8.so
b6e82000-b6ea6000 rw-p b6e82000 00:00 0 
b6ea6000-b70a6000 r--p 00000000 03:01 2806604    /usr/lib/locale/locale-archive
b70a6000-b70a9000 rw-p b70a6000 00:00 0 
b70a9000-b70b5000 r-xp 00000000 03:01 550563     /usr/lib/libgcc_s.so.1
b70b5000-b70b6000 rw-p 0000b000 03:01 550563     /usr/lib/libgcc_s.so.1
b70b6000-b70b7000 rw-p b70b6000 00:00 0 
b70b7000-b70bb000 r-xp 00000000 03:01 2696290    /usr/X11/lib/libXfixes.so.3.1.0
b70bb000-b70bc000 rw-p 00003000 03:01 2696290    /usr/X11/lib/libXfixes.so.3.1.0
b70bc000-b70be000 r-xp 00000000 03:01 2696278    /usr/X11/lib/libXdamage.so.1.0.0
b70be000-b70bf000 rw-p 00001000 03:01 2696278    /usr/X11/lib/libXdamage.so.1.0.0
b70bf000-b70cc000 r-xp 00000000 03:01 2696287    /usr/X11/lib/libXext.so.6.4.0
b70cc000-b70cd000 rw-p 0000d000 03:01 2696287    /usr/X11/lib/libXext.so.6.4.0
b70cd000-b70cf000 r-xp 00000000 03:01 2696272    /usr/X11/lib/libXcomposite.so.1.0.0
b70cf000-b70d0000 rw-p 00001000 03:01 2696272    /usr/X11/lib/libXcomposite.so.1.0.0
b70d0000-b70d8000 r-xp 00000000 03:01 2696275    /usr/X11/lib/libXcursor.so.1.0.2
b70d8000-b70d9000 rw-p 00007000 03:01 2696275    /usr/X11/lib/libXcursor.so.1.0.2
b70d9000-b70df000 r-xp 00000000 03:01 2696326    /usr/X11/lib/libXrandr.so.2.2.0
b70df000-b70e0000 rw-p 00005000 03:01 2696326    /usr/X11/lib/libXrandr.so.2.2.0
b70e0000-b70e1000 rw-p b70e0000 00:00 0 
b70e1000-b70e3000 r-xp 00000000 03:01 2696305    /usr/X11/lib/libXinerama.so.1.0.0
b70e3000-b70e4000 rw-p 00001000 03:01 2696305    /usr/X11/lib/libXinerama.so.1.0.0
b70e4000-b721e000 r-xp 00000000 03:01 2953491    /lib/libc-2.8.so
b721e000-b7221000 rw-p 0013a000 03:01 2953491    /lib/libc-2.8.so
b7221000-b7224000 rw-p b7221000 00:00 0 
b7224000-b7254000 r-xp 00000000 03:01 549307     /lib/libpcre.so.0.0.1
b7254000-b7255000 rw-p 0002f000 03:01 549307     /lib/libpcre.so.0.0.1
b7255000-b7309000 r-xp 00000000 03:01 549350     /usr/lib/libglib-2.0.so.0.2104.0
b7309000-b730a000 rw-p 000b4000 03:01 549350     /usr/lib/libglib-2.0.so.0.2104.0
b730a000-b730c000 r-xp 00000000 03:01 2953494    /lib/libdl-2.8.so
b730c000-b730e000 rw-p 00001000 03:01 2953494    /lib/libdl-2.8.so
b730e000-b7310000 r-xp 00000000 03:01 566073     /usr/lib/libgmodule-2.0.so.0.2104.0
b7310000-b7311000 rw-p 00002000 03:01 566073     /usr/lib/libgmodule-2.0.so.0.2104.0
b7311000-b7312000 rw-p b7311000 00:00 0 
b7312000-b734d000 r-xp 00000000 03:01 566081     /usr/lib/libgobject-2.0.so.0.2104.0
b734d000-b734e000 rw-p 0003b000 03:01 566081     /usr/lib/libgobject-2.0.so.0.2104.0
b734e000-b735d000 r-xp 00000000 03:01 2953503    /lib/libresolv-2.8.so
b735d000-b735f000 rw-p 0000e000 03:01 2953503    /lib/libresolv-2.8.so
b735f000-b7361000 rw-p b735f000 00:00 0 
b7361000-b73f5000 r-xp 00000000 03:01 566085     /usr/lib/libgio-2.0.so.0.2104.0
b73f5000-b73f7000 rw-p 00094000 03:01 566085     /usr/lib/libgio-2.0.so.0.2104.0
b73f7000-b740a000 r-xp 00000000 03:01 2953486    /lib/libz.so.1.2.3
b740a000-b740b000 rw-p 00013000 03:01 2953486    /lib/libz.so.1.2.3
b740b000-b747d000 r-xp 00000000 03:01 549364     /usr/lib/libfreetype.so.6.3.20
b747d000-b7481000 rw-p 00071000 03:01 549364     /usr/lib/libfreetype.so.6.3.20
b7481000-b74a5000 r-xp 00000000 03:01 550484     /usr/lib/libexpat.so.1.5.2
b74a5000-b74a7000 rw-p 00023000 03:01 550484     /usr/lib/libexpat.so.1.5.2
b74a7000-b74a8000 rw-p b74a7000 00:00 0 
b74a8000-b74d2000 r-xp 00000000 03:01 550532     /usr/lib/libfontconfig.so.1.3.0
b74d2000-b74d3000 rw-p 0002a000 03:01 550532     /usr/lib/libfontconfig.so.1.3.0
b74d3000-b74f7000 r-xp 00000000 03:01 2953453    /lib/libm-2.8.so
b74f7000-b74f9000 rw-p 00023000 03:01 2953453    /lib/libm-2.8.so
b74f9000-b751e000 r-xp 00000000 03:01 598660     /usr/lib/libpng12.so.0.37.0
b751e000-b751f000 rw-p 00024000 03:01 598660     /usr/lib/libpng12.so.0.37.0
b751f000-b7523000 r-xp 00000000 03:01 2696281    /usr/X11/lib/libXdmcp.so.6.0.0
b7523000-b7524000 rw-p 00003000 03:01 2696281    /usr/X11/lib/libXdmcp.so.6.0.0
b7524000-b7526000 r-xp 00000000 03:01 2696263    /usr/X11/lib/libXau.so.6.0.0
b7526000-b7527000 rw-p 00001000 03:01 2696263    /usr/X11/lib/libXau.so.6.0.0
b7527000-b753e000 r-xp 00000000 03:01 606225     /usr/X11/lib/libxcb.so.1.1.0
b753e000-b753f000 rw-p 00016000 03:01 606225     /usr/X11/lib/libxcb.so.1.1.0
b753f000-b7540000 rw-p b753f000 00:00 0 
b7540000-b7632000 r-xp 00000000 03:01 2696254    /usr/X11/lib/libX11.so.6.2.0
b7632000-b7634000 rw-p 000f2000 03:01 2696254    /usr/X11/lib/libX11.so.6.2.0
b7634000-b763c000 r-xp 00000000 03:01 2696329    /usr/X11/lib/libXrender.so.1.3.0
b763c000-b763d000 rw-p 00007000 03:01 2696329    /usr/X11/lib/libXrender.so.1.3.0
b763d000-b7643000 r-xp 00000000 03:01 2696417    /usr/X11/lib/libxcb-render.so.0.0.0
b7643000-b7644000 rw-p 00005000 03:01 2696417    /usr/X11/lib/libxcb-render.so.0.0.0
b7644000-b7647000 r-xp 00000000 03:01 2701187    /usr/X11/lib/libxcb-render-util.so.0.0.0
b7647000-b7648000 rw-p 00002000 03:01 2701187    /usr/X11/lib/libxcb-render-util.so.0.0.0
b7648000-b769e000 r-xp 00000000 03:01 2695316    /usr/X11/lib/libpixman-1.so.0.15.14
b769e000-b76a0000 rw-p 00056000 03:01 2695316    /usr/X11/lib/libpixman-1.so.0.15.14
b76a0000-b76a1000 rw-p b76a0000 00:00 0 
b76a1000-b7712000 r-xp 00000000 03:01 566093     /usr/lib/libcairo.so.2.10800.8
b7712000-b7714000 rw-p 00071000 03:01 566093     /usr/lib/libcairo.so.2.10800.8
b7714000-b7754000 r-xp 00000000 03:01 549266     /usr/lib/libpango-1.0.so.0.2503.0
b7754000-b7756000 rw-p 0003f000 03:01 549266     /usr/lib/libpango-1.0.so.0.2503.0
b7756000-b7836000 r-xp 00000000 03:01 551310     /usr/lib/libstdc++.so.6.0.10
b7836000-b7839000 r--p 000e0000 03:01 551310     /usr/lib/libstdc++.so.6.0.10
b7839000-b783b000 rw-p 000e3000 03:01 551310     /usr/lib/libstdc++.so.6.0.10
b783b000-b7841000 rw-p b783b000 00:00 0 
b7841000-b7864000 r-xp 00000000 03:01 549434     /usr/lib/libpangoft2-1.0.so.0.2503.0
b7864000-b7865000 rw-p 00023000 03:01 549434     /usr/lib/libpangoft2-1.0.so.0.2503.0
b7865000-b786f000 r-xp 00000000 03:01 549980     /usr/lib/libpangocairo-1.0.so.0.2503.0
b786f000-b7870000 rw-p 00009000 03:01 549980     /usr/lib/libpangocairo-1.0.so.0.2503.0
b7870000-b7a7a000 r-xp 00000000 03:01 551114     /usr/lib/libxml2.so.2.7.3
b7a7a000-b7a80000 rw-p 00209000 03:01 551114     /usr/lib/libxml2.so.2.7.3
b7a80000-b7aec000 rw-p b7a80000 00:00 0 
b7aec000-b7b04000 r-xp 00000000 03:01 549433     /usr/lib/libgdk_pixbuf-2.0.so.0.1707.0
b7b04000-b7b05000 rw-p 00017000 03:01 549433     /usr/lib/libgdk_pixbuf-2.0.so.0.1707.0
b7b05000-b7b37000 r-xp 00000000 03:01 549246     /usr/lib/libcroco-0.6.so.3.0.1
b7b37000-b7b3a000 rw-p 00031000 03:01 549246     /usr/lib/libcroco-0.6.so.3.0.1
b7b3a000-b7b49000 r-xp 00000000 03:01 2953436    /lib/libbz2.so.1.0.4
b7b49000-b7b4a000 rw-p 0000f000 03:01 2953436    /lib/libbz2.so.1.0.4
b7b4a000-b7b7d000 r-xp 00000000 03:01 2702393    /usr/lib/libgsf-1.so.114.0.15
b7b7d000-b7b80000 rw-p 00032000 03:01 2702393    /usr/lib/libgsf-1.so.114.0.15
b7b80000-b7b81000 rw-p b7b80000 00:00 0 
b7b81000-b7bb2000 r-xp 00000000 03:01 551479     /usr/lib/librsvg-2.so.2.26.0
b7bb2000-b7bb3000 rw-p 00031000 03:01 551479     /usr/lib/librsvg-2.so.2.26.0
b7bb3000-b7bba000 r-xp 00000000 03:01 2953504    /lib/librt-2.8.so
b7bba000-b7bbc000 rw-p 00006000 03:01 2953504    /lib/librt-2.8.so
b7bbc000-b7bbd000 rw-p b7bbc000 00:00 0 
b7bbd000-b7bd1000 r-xp 00000000 03:01 2953502    /lib/libpthread-2.8.so
b7bd1000-b7bd3000 rw-p 00013000 03:01 2953502    /lib/libpthread-2.8.so
b7bd3000-b7bd5000 rw-p b7bd3000 00:00 0 
b7bd5000-b7bd8000 r-xp 00000000 03:01 566077     /usr/lib/libgthread-2.0.so.0.2104.0
b7bd8000-b7bd9000 rw-p 00003000 03:01 566077     /usr/lib/libgthread-2.0.so.0.2104.0
b7bd9000-b7c73000 r-xp 00000000 03:01 550588     /usr/lib/libgdk-x11-2.0.so.0.1707.0
b7c73000-b7c76000 rw-p 0009a000 03:01 550588     /usr/lib/libgdk-x11-2.0.so.0.1707.0
b7c76000-b7c8e000 r-xp 00000000 03:01 566089     /usr/lib/libatk-1.0.so.0.2799.1
b7c8e000-b7c90000 rw-p 00017000 03:01 566089     /usr/lib/libatk-1.0.so.0.2799.1
b7c90000-b8082000 r-xp 00000000 03:01 550781     /usr/lib/libgtk-x11-2.0.so.0.1707.0
b8082000-b8088000 rw-p 003f2000 03:01 550781     /usr/lib/libgtk-x11-2.0.so.0.1707.0
b8088000-b808a000 rw-p b8088000 00:00 0 
b808b000-b808d000 r--s 00000000 03:01 1966214    /var/cache/fontconfig/ccb2d0786bada64fd4b4887a4949240d-x86.cache-2
b808d000-b808f000 r--s 00000000 03:01 1966224    /var/cache/fontconfig/e4cac7bc2d1cdc8d911e51065e176c39-x86.cache-2
b808f000-b8091000 r--s 00000000 03:01 1966205    /var/cache/fontconfig/5d5eff56e8f1159b1b4589e2943afc55-x86.cache-2
b8091000-b8093000 r--s 00000000 03:01 1966348    /var/cache/fontconfig/a1362903781f7641f644edcc0d02aa41-x86.cache-2
b8093000-b809a000 r--s 00000000 03:01 1966195    /var/cache/fontconfig/12b26b760a24f8b4feb03ad48a333a72-x86.cache-2
b809a000-b809d000 r--s 00000000 03:01 1966216    /var/cache/fontconfig/d3169a704c6df42fa91819104f3eb94b-x86.cache-2
b809d000-b809f000 r--s 00000000 03:01 1966347    /var/cache/fontconfig/70fd2c11b2d8908aa11df0f070326520-x86.cache-2
b809f000-b80a2000 r--s 00000000 03:01 1966207    /var/cache/fontconfig/9dd6a158229303525cf40d4c0dc19443-x86.cache-2
b80a2000-b80a7000 r--s 00000000 03:01 1966194    /var/cache/fontconfig/0e88e43088e6790fa9c7a1644548a8d7-x86.cache-2
b80a7000-b80ad000 r--p 00000000 03:01 3172801    /usr/share/pixmaps/hicolor/icon-theme.cache
b80ad000-b80ae000 r-xp 00000000 03:01 2711711    /usr/X11/lib/X11/locale/common/xlcUTF8Load.so.2.0.0
b80ae000-b80af000 rw-p 00000000 03:01 2711711    /usr/X11/lib/X11/locale/common/xlcUTF8Load.so.2.0.0
b80af000-b80b0000 rw-p b80af000 00:00 0 
b80b0000-b80b1000 r-xp b80b0000 00:00 0          [vdso]
b80b1000-b80cc000 r-xp 00000000 03:01 2953489    /lib/ld-2.8.so
b80cc000-b80ce000 rw-p 0001a000 03:01 2953489    /lib/ld-2.8.so
bfdb8000-bfdcd000 rw-p bffeb000 00:00 0          [stack]

Program received signal SIGABRT, Aborted.

Thread 3070912208 (LWP 10180)

  • #0 __kernel_vsyscall
  • #1 raise
    from /lib/libc.so.6
  • #2 abort
    from /lib/libc.so.6
  • #3 __libc_message
    from /lib/libc.so.6
  • #4 malloc_printerr
    from /lib/libc.so.6
  • #5 free
    from /lib/libc.so.6
  • #6 IA__g_free
    at gmem.c line 190
  • #7 save_svg
    at test-display.c line 346
  • #8 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #9 IA__g_closure_invoke
    at gclosure.c line 767
  • #10 signal_emit_unlocked_R
    at gsignal.c line 3247
  • #11 IA__g_signal_emit_valist
    at gsignal.c line 2980
  • #12 IA__g_signal_emit
    at gsignal.c line 3037
  • #13 IA__gtk_widget_activate
    at gtkwidget.c line 4817
  • #14 IA__gtk_menu_shell_activate_item
    at gtkmenushell.c line 1139
  • #15 gtk_menu_shell_button_release
    at gtkmenushell.c line 678
  • #16 gtk_menu_button_release
    at gtkmenu.c line 2983
  • #17 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 84
  • #18 g_type_class_meta_marshal
    at gclosure.c line 878
  • #19 IA__g_closure_invoke
    at gclosure.c line 767
  • #20 signal_emit_unlocked_R
    at gsignal.c line 3285
  • #21 IA__g_signal_emit_valist
  • #22 IA__g_signal_emit
    at gsignal.c line 3037
  • #23 gtk_widget_event_internal
    at gtkwidget.c line 4786
  • #24 IA__gtk_propagate_event
    at gtkmain.c line 2396
  • #25 IA__gtk_main_do_event
    at gtkmain.c line 1601
  • #26 gdk_event_dispatch
    at gdkevents-x11.c line 2379
  • #27 IA__g_main_context_dispatch
    at gmain.c line 1960
  • #28 g_main_context_iterate
    at gmain.c line 2591
  • #29 IA__g_main_loop_run
    at gmain.c line 2799
  • #30 IA__gtk_main
    at gtkmain.c line 1205
  • #31 main
    at test-display.c line 819

Other information:
Version set of the library tree on whom the librsvg depends (although downgrading some and/or all of the libraries (including librsvg itself) did not have any effect):

Glib: 2.21.4
Cairo: 1.8.8
Pango: 1.25.3
GTK+: 2.17.7
libcroco: 0.6.2
libgsf: 1.14.15
libxml2: 2.7.3
Comment 1 Arets Paeglis 2009-08-14 04:20:12 UTC
The file used for gdb run is svg-viewer.svg (although changing it to any other SVG file has no effect on this) from the librsvg source, duplicated here: http://www.easy-share.com/1907332974/svg-viewer.svg
Comment 2 Christian Persch 2009-08-25 20:31:07 UTC
==7380== Invalid free() / delete / delete[]
==7380==    at 0x4023836: free (vg_replace_malloc.c:325)
==7380==    by 0x4CB77E2: g_free (gmem.c:190)
==7380==    by 0x804B4D4: save_pixbuf (test-display.c:300)
==7380==  Address 0x8db0d55 is 5 bytes inside a block of size 20 alloc'd
==7380==    at 0x4023C1C: malloc (vg_replace_malloc.c:195)
==7380==    by 0x4CB7624: g_malloc (gmem.c:131)
==7380==    by 0x4CD2BE3: g_strdup (gstrfuncs.c:102)
==7380==    by 0x804ABE4: _rsvg_basename (test-display.c:49)
==7380==    by 0x804B47B: save_pixbuf (test-display.c:293)
Comment 3 Christian Persch 2009-08-25 20:37:42 UTC
Created attachment 141695 [details] [review]
patch
Comment 4 Arets Paeglis 2009-08-26 03:00:51 UTC
Thank you, this did solve the problem with crashing rsvg-view. Still, the more serious issue remains; namely, that with librsvg's GDK pixbuf loader, which still does not work (for example, SVG icons are not loaded, with standard error message "Error loading theme icon 'foo-bar' for stock: Unrecognized image file format").

Even more so, I do not know how to trace something like GDK loader which is being run only indirectly + (AFAIK) on demand, and usually does not cause the main program to crash/throw an exception, nor is it being loaded at program's startup, where I could use GDB's shared symbol autoloading facilities.

Thanks in advance.
Comment 5 Hiroyuki Ikezoe 2010-04-10 07:36:38 UTC
Comment on attachment 141695 [details] [review]
patch

Committed with configure.in change.
Comment 6 Hiroyuki Ikezoe 2010-04-10 07:38:10 UTC
Arets, please attach the problem svg file here. The link in comment #1 has been death.
Comment 7 Arets Paeglis 2010-04-10 21:24:23 UTC
The test-display and rsvg-view are working correctly now, although GTK loader for SVG still fails and issues error about "Unrecognized image file format". Is there any plausible way to debug the loader itself?
Comment 8 Hiroyuki Ikezoe 2010-04-10 23:24:06 UTC
EOG will suit it. Anyway please attach the file.
Comment 9 Dominic Lachowicz 2010-04-10 23:27:25 UTC
Sometimes, SVGs have a large GPL/header license at the top. The loader is looking for an "<svg" tag in the file's first N bytes. If it doesn't find that, then it will say "I don't know how to load this type of image."
Comment 10 Arets Paeglis 2010-04-11 05:34:20 UTC
The "svg-viewer.svg" file I previously uploaded can actually be found in the librsvg source distribution, in the 'data' subfolder. This is what I used to examine the failures, I just forgot to mention it.

And, no, the presence or absence of disclaimer seems to be no issue in this case; the SVG loader (located in the standard location, i.e., /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so) fails to provide any image data for any SVG file.

With EOG, do you mean Eye of Gnome? If so, what relevance it has regarding the debugging possibilities of the loader, or did I just misunderstand something?
Comment 11 Hiroyuki Ikezoe 2010-04-11 06:16:12 UTC
(In reply to comment #10)

> With EOG, do you mean Eye of Gnome? If so, what relevance it has regarding the
> debugging possibilities of the loader, or did I just misunderstand something?

Because EOG uses the svg loader through GdkPixbufLoader. So if the svg loader is correctly loaded, you can see symbols of the svg loader and librsvg itself in gdb.
Comment 12 Christian Persch 2011-11-09 20:15:08 UTC
Works here with librsvg git master, both in the pixbuf loader test, and eog.

(In reply to comment #10)
> And, no, the presence or absence of disclaimer seems to be no issue in this
> case; the SVG loader (located in the standard location, i.e.,
> /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.so) fails to provide any image data
> for any SVG file.

'... any... for any SVG file' means there's a local installation problem on your machine.