kichat: Installed Smilies -now iChat doesn't work

Last Modified: Feb 22, 2011 7:18 PM
Disclaimer: Apple does not necessarily endorse any suggestions, solutions, or third-party software products that may be mentioned in the topic below. Apple encourages you to first seek a solution at Apple Support. The following links are provided as is, with no guarantee of the effectiveness or reliability of the information. Apple does not guarantee that these links will be maintained or functional at any given time. Use the information below at your own discretion.

A few posters on the Apple Discussions have installed smiley packs such as: More iChat Smileys 2.5, ThinkSecretSmilies, DasboPack, etc. Note: Those packs can be installed and used in some cases as some users have had success, but only the Buddies who have the smiley packs installed will see the smiles. Buddies without that specific smiley pack installed will only see the default iChat emoticons.

These smiley packs have caused some problems with iChat not working, error messages, and various other problems that cause iChat to complain to the user. Some of those error messages are as follows (among others):
• NSInvalidArgumentException: *-[NSCFArray addObject:]: attempt to insert nil
• NSInvalidArgumentException: ** -[NSTextField setRomanOnly:]: selector not recognized

The reason for this is often the result of the smiley pack installing files into the /System/Library/PrivateFrameworks/InstantMessage.framework directory. This tends to interfere with iChat files that were originally installed there since it does modify the emoticons used by iChat. The easiest way to restore iChat from these error messages is by reinstalling the InstantMessage.framework folder using Pacifist. Below is how to restore the original iChat emoticons.

Using the Panther Upgrade Discs:

Pacifist is a utility used for extracting install disk files. Here are the instructions you need to reinstall the folder from the Panther upgrade disks.

From the three Panther Upgrade discs, put Install Disk 1 into the CD drive. When it loads, hit the button labeled "Open Mac OS X Install Packages" on the Pacifist application. This button will only be available once Pacifist loads the disc.

It will later prompt you to insert Disk 2, and then Disk 3. Follow the directions as to what disc it tells you to insert. Finally, it asks once more for Disk 1; so insert it again. Then a window opens up listing all of the directories from the Panther Upgrade discs. Go to the following directory:

Contents of OSInstall.mpkg/Contents of EssentialSystemSoftware.mpkg/
Contents of BaseSystem.pkg/Contents of Essentials.pkg/System/Library/

Extract the folder to your Desktop. You will then move that new folder to the /System/Library/PrivateFrameworks/ on your computer. Your admin password will be required as you are overwriting files in this directory and it's password protected. Immediately following, repair permissions by running Disc Utility and restart the computer. iChat should now open after your computer restarts (once you open the application, that is).

For computers that came pre-installed with Panther (i.e. no upgrade discs):

See my other FAQ and scroll down to the bottom where it says "Software Restore Discs (for newer computers that came preinstalled with Panther)." You will follow that same procedure, but instead of reinstalling iChat, you will only reinstall the folder mentioned above, InstantMessage.framework. Repair permissions by running Disc Utility following this installation, restart, and iChat should now open after your computer restarts (once you open the application, that is).

If there are questions, feel free to post in the iChatAV Discussions - we're here to help!

Do you want to provide feedback on this User Contributed Tip or contribute your own? If you have achieved Level 2 status, visit the User Tips Library Contributions forum for more information.