How to stop AppKiDo 0.983 from crashing on launch

If AppKiDo 0.983 is crashing on launch, try going into Xcode and updating the Leopard Core Library docset. If it's the same problem a couple of people have reported, the crashing should go away. If you're not sure how to update the docset, see my next post.

(Note this is not a problem for AppKiDo-for-iPhone, so if that's crashing for you please let me know.)

Here's what was causing the crash. During startup, AppKiDo reads a property called "DocSetPlatformVersion" from a plist file in the Cocoa docset bundle. There was at least one version of the docs where that value was missing from the plist, and since I don't check for this, I ended up trying to insert nil into an array. Updating your docs gets rid of the crash by fixing the plist.

Yeah, I shouldn't be hacking around in undocumented plists (setting aside the more grievous error of not checking for nil), but the fact is that AppKiDo relies almost totally on undocumented file, directory, and database structures. There are ways I can reduce this dependency (especially when I get around to requiring Xcode 3 as a minimum), but I don't see the hackishness going completely away any time soon.

At some point I'll release an update to handle situations like this more gracefully.

Thanks to Chris Backas for helping to track this down.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.