Sorry for the long hiatus – firstly I was away on vacation for a couple of weeks (one week in London for my brother’s wedding, the second in Victoria, BC on the beautiful west coast of Canada) and also we’ve had some technical hitches at home. My HP notebook wouldn’t start up – if I pressed the power button the power light would come on but nothing else would happen at all. Fortunately it’s still covered by warranty, so it’s away being repaired. Fortunately also I had backed up all my stuff just a couple of days before it died, so all my photos etc should be OK.
Then we noticed that Emma’s iBook (now four and a half years old) was acting up. Loads of applications would try to start up but then just fail before they could do anything, for example Safari or Firefox browsers. I did some research (mostly knowing about the innards of PCs) and found that it could be due to corrupted .plist files, which are kind of like preference files for applications. The info I read said that if you’re getting weird application behavior it’s best to delete that application’s .plist file, as the app will then create a new “clean” file when it starts next. So I went to my /user/library/preferences folder and deleted all the com.apple*.plist files (actually I put them into a backup folder – the point being that I moved them out of the preferences folder). When I started Safari, a new browser window came up, which was progress, and it said it was downloading information but rather than displaying a page it would just crash. Another clue was that some applications (like TextEdit) would start up OK but then crash when I tried to open a file. Clearly something else was up too.
When Safari crashed it gave the option to view the crash report, so I clicked that button and had a look. It was mostly a lot of strange looking info but one phrase seemed to show up several times:
/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ATS.framework/Support/ATSServer: FOExceptionMainHandler caught a fatal exception
On searching around it seemed that ATSServer manages Apple Type Services – the font management on the screen. It looked like in this post there could be a problem with the font caches, but I couldn’t find any of the cache files he referenced. Other sites suggested that there could be an issue with the mac’s system fonts. Two clues which pointed towards this was that Microsoft apps (like Word) ran just fine, and would display different fonts OK, but the crashing behavior happened under both Emma’s and my logons. It seemed that there are common system fonts, which all users of the computer use, and also account-local fonts, which the Microsoft apps were using. So a problem with the system fonts.
Fortunately I still have the OS X (operating system) install CD, so I used that to do a reinstall – not wiping everything, but preserving all our account settings. I didn’t want to have to do something as drastic as a complete hard drive wipe and reinstall. But that didn’t fix the problem. So I looked on the OS X CD for the fonts folder – found it and fortunately the fonts were easy to copy onto my desktop. I went to the system fonts folder /system/library/fonts and found that the names of the fonts there matched the ones on the install disk. Just copying over the font files didn’t work, however, as some files were in use. So I had to re-create the fonts folder and get rid of the old (bad) one. This involved changing some folder permissions: I selected the /system/library folder, did CTRL+click, chose Get Info and changed the owner of the folder to be me, so I had read and write access. Then I changed the name of the old fonts folder to be FontsOld. Then I created a new folder called Fonts, and copied in all the fonts from the install disk. Finally I use the Get Info dialog to set the owner of the /system/library folder back to system (the original value). A quick reboot, and we had a result – the applications all started cleanly and fonts are displaying just fine.
It’s a bit of a mystery to me why these font files would become corrupted, but I’m fairly pleased with myself that I managed to work all this out! It could be that there was a more elegant solution – if you know of one please leave a comment, and if you come across this post because you’re having the same issue, let me know if this helps. I probably won’t be able to help if it doesn’t resolve your problem, because this stretched the limits of my Mac skills.