Firefox Crashes on Fedora 11

For folks who are running the current development, or soon-to-be-just-released Fedora 11, you might find Firefox to be very crashy. It’s not because it’s the semi-controversial 3.5b4 version (which is excellent), it’s because of a buggy library.

I’m running it with the Tree Style Tab and NoScript extensions, and can get a crash half the time when Session Restore is running, and almost all the time when I allow a site in NoScript.

If you run firefox from the console, so you get the debug messages, you’ll see:

cairo-ft-font.c:554: _cairo_ft_unscaled_font_lock_face: Assertion `!unscaled->from_face' failed 

when the crash happens. I tracked this down through the Mozilla and Freedesktop bug systems to a problem with the Cairo graphics engine improperly disposing of fonts which it didn’t own, for which a fix was incorporated last December. However, the version of Cairo shipping in Fedora 11 is older than that.

So, I applied the simple patch, fixed up the .spec, and put up some new RPM’s for i386 and an SRPM for hackers and x86_64 users to build (rpmbuild --rebuild cairo-1.8.6-3.fc11.src.rpm).

I haven’t tried cross-compiling from i386 to x86_64 before, and –target=x86_64 doesn’t work, so if anybody can tell me how to do that short of learning mock, please leave a comment and I’ll put up RPM’s for that too.

The Redhat bug is here. Hopefully it gets accepted soon.