Saturday, January 10, 2009

Safari, Firefox wildly crashing

Image representing Firefox as depicted in Crun...Image via CrunchBaseA few weeks ago I had huge problems with stability of my web browsers - at first it started with Firefox and although at first it was limited to it alone I quickly realized that I was wrong and that Safari just as happily crashes as Firefox. Since this was the first time I had any real stability issues since I switched to Mac I decided to take a bit more thorough look at how crash reporting is conducted on Mac.

(For a solution to why Firefox and Safari crashed as often as they did, you can skip to the end of article.)

Partial problem that prevented any useful debugging with Firefox was that Mozilla crash reporter only gives you a text area field to tell them what you did before the browser crashed. I was later informed by Brian King that Mozilla gets a lot more information than it shows to user and discovered this little gem - Mozilla Crash Reporter - basically, one can type about:crashes to get a list of links to crash reports as they were submited to Firefox developers or, if that is not an option (you're either offline or your Firefox crashes at start), look into ~/Library/Application Support/Firefox/Crash Reports/.

Few days after Firefox, Safari started crashing. If for Firefox I at first speculated that browser crashes when I visit secure web pages (it constantly crashed at Firefox Add-on page and at my banking site), this time I couldn't establish any meaningful pattern.

But Safari does show you Apples default Crash Reporter which gives you a lot more information by default and now I had to get down and dirty with the problem since browsing the web was no longer possible. After a bit of staring at the Crash Reporter log output I posted a thread at Apples Discussion forum and started to dig around for documentation related to Crash Reporter.

Luckily, the response at discussion board was almost instant (as said, solution below), but I still decided to get a bit more knowledge about Crash Reporter and managed to find Apples Technical Note TN2123 that gives deep insight about what is what and where in the crash report - most of the information is important only to developers but when you are faced with a problem similar to mine, this can just be your solution.

What I did notice is that its problem is not the lack of information, it is how these information ca be passed to third party developers - and this appears to be a rather long standing issue since it was discussed by John Gruber back in 2006 already and Apples recommendation is still the same.

After getting a bit more familiar with what Crash Reporter really wanted to say to me and still wondering what most of the services were, I was educated that the problem was with Apple Type Server, or ATS. As soon as this was mentioned I realized what the problem was all along - about two week back from when Safari started crashing I installed Windows fonts for some application.

At that time Font Book said that I have duplicate fonts and one corrupted one but I never imagined that those could cause any serious problems down the road so I moved along. Since I don't use Firefox daily and never quit Safari, fonts that browser used never got reloaded and only started causing problems when they were used on various web pages.

Removing duplicate and corrupted fonts resolved the issue for good.

Enhanced by Zemanta

1 comments:

Jure Cuhalev said...

That's like the same fix as I had to do for iWork crashing - http://www.jurecuhalev.com/blog/2008/02/18/how-to-fix-iwork-08keynoteidvdnumberspages-nsinternalinconsistencyexception-crash/

foo Apple! :P