Fixing Mail.app's recent mail addresses problem

I had noticed for a while that somehow my Mail.app’s “recent mail addresses” list was not updating (I never seemed to get any of my recently used addresses in Quicksilver). Today I noticed the following error message in /var/log/system.log:

Mail[365]: AddressBook failed to save: Error Domain=NSCocoaErrorDomain Code=259 UserInfo=0x10c9a810 "The file MailRecents-v4.abcdmr€ could not be opened because it is not in the right format." ({\n NSFilePath = "/Users/dza/Library/Application Support/AddressBook/MailRecents-v4.abcdmr";\n NSUnderlyingException = Fatal error. The database at /Users/dza/Library/Application Support/AddressBook/MailRecents-v4.abcdmr is corrupted. SQLite error code:1;\n})

While trying to figure out what was wrong, I discovered that the file for some reason had an ACL that prevented everyone (including me!) from modifying it:

~/Library/Application Support/AddressBook $ /bin/ls -lea MailRecents-v4.abcdmr
-rw-------@ 1 dza staff 102400 Feb 4 2008 MailRecents-v4.abcdmr
0: group:everyone deny write,delete,append,writeattr,writeextattr,chown

So I removed the ACL:

$ /bin/chmod -a# 0 MailRecents-v4.abcdmr

And the error is gone! The file was not corrupted, but Mail could simply not write to it. The puzzling part is how did that ACL end up there…

Posted by email from zzamboni’s posterous

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s