Comment 13 for bug 743530

Revision history for this message
Aldis Berjoza (graudeejs) wrote : Re: [Bug 743530] Re: inkscape coredumps on opening SVG files with gradients (FreeBSD amd64)

On Mon, May 16, 2011 at 6:18 PM, Craig Boston <email address hidden> wrote:
> I believe I've tracked it down. In sp-paint-server.cpp, the gobject type
> of the paint server is stored in painter->type. However painter->type is
> an enum. On 64-bit platforms, this enum is 32 bits wide. glib appears to
> be using some pointer masking for quick reference to certain gobject
> types. When it's shoved into the 32-bit field, the type reference is
> being truncated, causing glib to access unallocated memory when the mask
> is later reversed.
>
> I believe this may supposed to be using SPPainter::server_type instead,
> which is a GType and looks to be otherwise unused.
>
> The attached patch fixes the crash on my system (as well as the issue in
> bug #778441).
>
> ** Attachment added: "patch-sp-paint-server.cpp"
>   https://bugs.launchpad.net/inkscape/+bug/743530/+attachment/2130982/+files/patch-sp-paint-server.cpp
>
> --
> You received this bug notification because you are a direct subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/743530
>
> Title:
>  inkscape coredumps on opening SVG files with gradients (FreeBSD amd64)
>
> Status in Inkscape: A Vector Drawing Tool:
>  Confirmed
>
> Bug description:
>  When I try to open some of my svg (which were created with Inkscape about year or two ago)
>  Inkscape 0.48 coredumps
>
>
>  $ uname -a
>  FreeBSD desktop.pc 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Thu Feb 17 02:41:51 UTC 2011     <email address hidden>:/usr/obj/usr/src/sys/GENERIC  amd64
>
>  I've attached file, that I tried to open last time, Inkscape crashed....
>  I tried to open it few times, and it crashed always after rendering svg in about <= second
>
>  There was no usable console output, that could help indicating bug:
>
>  Emergency save activated!
>  Emergency save completed. Inkscape will close now.
>  If you can reproduce this crash, please file a bug at www.inkscape.org
>  with a detailed description of the steps leading to the crash, so we can fix it.
>  Segmentation fault (core dumped)
>
>
>  You can get coredump from:
>  http://files.bsdroot.lv/my/coredumps/inkscape.core-2011.03.27.xz
>
> To unsubscribe from this bug, go to:
> https://bugs.launchpad.net/inkscape/+bug/743530/+subscribe
>

This patch seam to fix my problem.
Incscape doesn't crash any-more when I open my old svg files :)