Here's the problem I was having...
I have a singleton object which is first instantiated inside my NSDocument's windowControllerDidLoadNib:. It attempts to fetch a password from the user's default keychain using EMKeychain. For over a week, this was working fine.
At some point I noticed that the password fetch would fail with an errSecAuthFailed error. However, it would only fail on every other app launch. Literally. Launch the app, it works. Quit, relaunch (with or without rebuilding) and it fails. Quit, launch again, it works. I reproduced this behavior 20 launches in a row, consistently. Cleaning all and rebuilding didn't change anything. Neither did locking/unlocking the keychain, restarting the Mac, etc.
After going back through numerous revisions, I tracked the problem down to the build where I first added Sparkle. Because this app is currently in beta testing, I have Sparkle configured to check for updates on every launch inside my app delegate like so:
- (vo