nautilus crashes when thumbnailing an svg with a pattern

Bug #104309 reported by John Leach
56
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Nautilus
Fix Released
Critical
libcairo
Fix Released
Medium
libcairo (Ubuntu)
Fix Released
Medium
Ubuntu Desktop Bugs

Bug Description

Binary package hint: nautilus

When displaying a folder with a particular svg in it, Nautilus uses 100% and eventually stops responding. I've pinned it down to one svg feature in particular: patterns. If the pattern definition is removed from the svg, nautilus thumbnails it with no problems.

An strace of Nautilus when it's using 100% cpu, repeats over and over: write(24, " to signal 8\n0x867e280 2007/04/08 00:23:38.3782 (USER): debug log dumped due to signal 8\n0x867e280 2007/04/08 00:23:38.3863 (USER): debug log dumped due to signal 8\n
0x867e280 2007/04/08 00:23:38.3886 (USER): debug log dumped due to signal 8\n0x867e280 2007/04/08 00:23:38.3908 (USER): debug log dumped due to signal 8\n0x867e280 2007/04/08 00:23:38.3930 (USER): debug log dumped due to signal 8\n0x867e280 2007/04/08 00:23:38.3966 (USER): debug log dumped due to signal 8\n0x867e280...

gdb backtrace points at libcairo

Program received signal SIGABRT, Aborted.
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb7285df0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb728778e in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb727f43b in __assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4 0xb7747b2f in ?? () from /usr/lib/libcairo.so.2
#5 0xb77969a9 in ?? () from /usr/lib/libcairo.so.2
#6 0xb779697c in ?? () from /usr/lib/libcairo.so.2
#7 0x00000143 in ?? ()
#8 0xb77969c0 in ?? () from /usr/lib/libcairo.so.2
#9 0xb36d69c8 in ?? ()
#10 0xb72c6e30 in free () from /lib/tls/i686/cmov/libc.so.6
#11 0xb774628d in ?? () from /usr/lib/libcairo.so.2
#12 0xb36d6bf0 in ?? ()
#13 0xb36d6ad0 in ?? ()
#14 0xb36d6ad8 in ?? ()
#15 0xb779ff50 in ?? () from /usr/lib/libcairo.so.2
#16 0xb36d6b28 in ?? ()
#17 0x00000000 in ?? ()

I'll attach the svg.

Revision history for this message
John Leach (johnleach) wrote :
Revision history for this message
John Leach (johnleach) wrote :

this same file crashes eog and gthumb too. Looks like a librsvg or libcairo bug.

Quite possibly http://bugzilla.gnome.org/show_bug.cgi?id=141073 (which I've now commented on to give more information).

Revision history for this message
John Leach (johnleach) wrote :

Doh, wrong gnome bugzilla link. should be: http://bugzilla.gnome.org/show_bug.cgi?id=309575

Changed in nautilus:
status: Unknown → Confirmed
Revision history for this message
In , Sebastien Bacher (seb128) wrote :

The bug has been opened on https://bugs.launchpad.net/bugs/104309

"Binary package hint: nautilus

When displaying a folder with a particular svg in it, Nautilus uses 100% and eventually stops responding. I've pinned it down to one svg feature in particular: patterns. If the pattern definition is removed from the svg, nautilus thumbnails it with no problems
...
gdb backtrace points at libcairo
...
http://librarian.launchpad.net/7216152/ep065.svg.gz
svg that crashes nautilus
...
this same file crashes eog and gthumb too. Looks like a librsvg or libcairo bug.
..."

Revision history for this message
In , Sebastien Bacher (seb128) wrote :
Download full text (27.4 KiB)

Debug backtrace for the crash:

(gdb) r ep065.svg
Starting program: /usr/bin/eog ep065.svg
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1226279232 (LWP 6292)]
[New Thread -1228252272 (LWP 6295)]

Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread -1228252272 (LWP 6295)]
0xb7859a32 in fbFetchTransformed (pict=0x83f8f60, x=<value optimized out>, y=<value optimized out>, width=224,
    buffer=0xb6c9e310, mask=0xb6c9ea10, maskBits=4278190080) at /build/buildd/libcairo-1.4.2/pixman/src/fbcompose.c:3576
warning: Source file is more recent than executable.
3576 y1 = MOD (y1, pict->pDrawable->height);
(gdb) thread apply all bt full

Thread 2 (Thread -1228252272 (LWP 6295)):
#0 0xb7859a32 in fbFetchTransformed (pict=0x83f8f60, x=<value optimized out>, y=<value optimized out>, width=224,
    buffer=0xb6c9e310, mask=0xb6c9ea10, maskBits=4278190080) at /build/buildd/libcairo-1.4.2/pixman/src/fbcompose.c:3576
        x1 = <value optimized out>
        x2 = <value optimized out>
        y1 = <value optimized out>
        distx = <value optimized out>
        idistx = <value optimized out>
        b = <value optimized out>
        tl = <value optimized out>
        tr = <value optimized out>
        r = <value optimized out>
        y2 = <value optimized out>
        disty = <value optimized out>
        bl = <value optimized out>
        br = 0
        bits = (FbBits *) 0x81708b8
        stride = 307
        fetch = (fetchPixelProc) 0xb7850e50 <fbFetchPixel_a8r8g8b8>
        v = {vector = {-32768, -32768, 65536}}
        i = 6
        box = {x1 = -7656, y1 = -18743, x2 = 24137, y2 = -18555}
#1 0xb785724d in pixman_compositeGeneral (op=<value optimized out>, pSrc=0x83f8f60, pMask=0x83fc260, pDst=0x8121920,
    xSrc=666, ySrc=280, xMask=0, yMask=0, xDst=666, yDst=280, width=224, height=24)
    at /build/buildd/libcairo-1.4.2/pixman/src/fbcompose.c:4138
        region = (pixman_region16_t *) 0x83f06f0
        n = 1
        pbox = <value optimized out>
        srcRepeat = 0
        maskRepeat = 0
        w = <value optimized out>
        h = <value optimized out>
        _scanline_buffer = {2675612794 <repeats 136 times>, 2540934259, 2170715746, 1396658495, 336532239, 0, 0, 0, 0, 0,
  2675612794 <repeats 39 times>, 2540934259, 2170715746, 1396658495, 336532239, 0 <repeats 155 times>, 989855744,
  2298478592, 2969567232, 3355443200, 3422552064 <repeats 101 times>, 0, 0, 0, 0, 0, 0, 50331648, 872415232, 1325400064,
  1711276032 <repeats 206 times>, 1493172224, 1040187392, 218103808, 0 <repeats 1302 times>,
  2155905152 <repeats 996 times>, 0 <repeats 1292 times>, 3076047185, 0, 0, 0, 0, 0, 0, 0, 3066701360, 0, 0, 429496729,
  5, 0, 0, 0, 0, 0, 1035784, 0, 3077156852, 0, 3077055574, 3066701324, 3076046591, 3066701360, 3066703004, 10, 0, 0,
  3077055577, 3066703028, 3076162333, 3066702944, 0, 10, 0, 0, 0, 0, 892547121, 3422263, 0 <repeats 248 times>, 100,
  3066703028, 3076162648, 3066703056, 49, 3066703056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1035784, 0, 0, 0, 0, 3077055573,...

Changed in nautilus:
status: Confirmed → In Progress
Revision history for this message
Arno Peters (awpeters) wrote :

this bug bites me regularly too, esp. when I am browsing though the OpenClipArt collection

Changed in nautilus:
status: Unconfirmed → Confirmed
Changed in nautilus:
assignee: nobody → desktop-bugs
importance: Undecided → Medium
Revision history for this message
In , Sebastien Bacher (seb128) wrote :
Changed in nautilus:
status: In Progress → Fix Released
Revision history for this message
In , Runar-mopo (runar-mopo) wrote :

Created an attachment (id=11410)
SVG file crashing Nautilus directly

This SVG file contains patterns that makes Nautilus crash directly when opening the folder.

Revision history for this message
In , Runar-mopo (runar-mopo) wrote :

Created an attachment (id=11411)
SVG file freezing Nautilus at 100% CPU usage

This file is the same as the latter, just without some cross-pattern.

Revision history for this message
In , Sebastien Bacher (seb128) wrote :

the examples work correctly on hardy, closing the bug

Revision history for this message
Sebastien Bacher (seb128) wrote :

The examples work correctly on hardy, closing the bug as fixed, feel free to reopen if you still get the issue using the new versions though

Changed in librsvg:
status: Confirmed → Fix Released
Changed in libcairo:
status: Unknown → Fix Released
Revision history for this message
Matthew Berta (matthew-berta) wrote :

I'm still having the same issues described here in a fully updated Ubuntu 7.10 (Gutsy): https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/151954/comments/10

'apt-cache showpkg libcairo2' shows the following as installed:
1.4.10-1ubuntu4.4 - libcairo
1.4.10-1ubuntu4 - libcairo

Revision history for this message
Milan Bouchet-Valat (nalimilan) wrote :

The fix was committed to Hardy, but should not be marked as released until either Hardy is officially released or a stable release update is done to Gutsy. Until then people will still experience it (Matthew, you're right, and this is normal).

Changed in libcairo:
status: Fix Released → Fix Committed
Revision history for this message
Sebastien Bacher (seb128) wrote :

no, bugs fixed to the current unstable version are closed when the package is uploaded, if the bug needs to be fixed to gutsy a gutsy task can be opened, that's not something which is likely to be backported though because it's not a security issue nor didn't get requested by many users

Changed in libcairo:
status: Fix Committed → Fix Released
Revision history for this message
Kyle Winkler (kylewinkler) wrote :

I downloaded a couple of SVGs to the Desktop, and Nautilus refused to even start, and the icons on the desktop disappeared. This was even after the Nautilus bugfix was downloaded and I rebooted the system. I got an "Floating point exception (core dumped)" error when I tried to start it from a terminal.

Revision history for this message
Jerikojerk (jerikojerk) wrote :

i get same bug with a inkscape 0.46 generated svg. "floating point exception".

i add that icons on the desktop had vanished after some try.

hope that 8.04 will fix this annoying bug.

Revision history for this message
Sebastien Bacher (seb128) wrote :

the example works correctly on hardy

Revision history for this message
Nemes Ioan Sorin (nemes-sorin) wrote : Re: [Bug 104309] Re: nautilus crashes when thumbnailing an svg with a pattern

yep - I can confirm - it's OK now - so that bug can be closed from my
point of view.

2008/4/23, Sebastien Bacher <email address hidden>:
> the example works correctly on hardy
>
>
> --
> nautilus crashes when thumbnailing an svg with a pattern
> https://bugs.launchpad.net/bugs/104309
> You received this bug notification because you are a direct subscriber
> of a duplicate bug.
>

--
Nemes Ioan Sorin

Revision history for this message
ziocane (mrc125) wrote :

Hi everybody!
I have the same problem with ubuntu 9.10 64 bit. Inkscape version is 0.47.
My svg with gradient background doesn't works, and nautilus freeze. After that I deleted the backgrund and BANG! It works!

last weeks I tried deleting .gnome2 - .nautilus, reinstall everything...

So, what have I to do to have my svg with background? Thank you

Revision history for this message
Nemes Ioan Sorin (nemes-sorin) wrote : Re: [Bug 104309] Re: nautilus crashes when thumbnailing an svg with a pattern

sadly - this bug willt not be stopped until someone with a good soul
will not cover this problem in a serious manner (from start to end)
anyone just think what's the problem but noone know exactly. when this
will happen Linux will be ready for
the masses.

2010/2/18 ziocane <email address hidden>:
> Hi everybody!
> I have the same problem with ubuntu 9.10 64 bit. Inkscape version is 0.47.
> My svg with gradient background doesn't works, and nautilus freeze. After that I deleted the backgrund and BANG! It works!
>
> last weeks I tried deleting .gnome2 - .nautilus, reinstall everything...
>
> So, what have I to do to have my svg with background? Thank you
>
> --
> nautilus crashes when thumbnailing an svg with a pattern
> https://bugs.launchpad.net/bugs/104309
> You received this bug notification because you are a direct subscriber
> of a duplicate bug.
>

--
Nemes Ioan Sorin

Revision history for this message
ziocane (mrc125) wrote :

I went in nautilus preferences > preview > never show thumbnails, after that I restore the gradient background in my svg file.
Actually nautilus doesn't freeze.

Changed in libcairo:
importance: Unknown → Medium
Changed in nautilus:
importance: Unknown → Critical
Changed in libcairo:
importance: Medium → Unknown
Changed in libcairo:
importance: Unknown → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.