Some users of my app have reported crashes occurring only when opening the app after a firmware upgrade to iOS 5. Everything was fine prior to the firmware upgrade – including running the app and upgrading to a newer version of the app and then running it.
The crash log indicates the crash is occurring when a NIB is loaded:
0 CoreFoundation 0x32bb38bf __exceptionPreprocess + 163
1 libobjc.A.dylib 0x36a1d1e5 objc_exception_throw + 33
2 CoreFoundation 0x32bb37b9 +[NSException raise:format:] + 1
3 CoreFoundation 0x32bb37db +[NSException raise:format:] + 35
4 UIKit 0x3169a747 -[UINib instantiateWithOwner:options:] + 1567
5 UIKit 0x3160a9cb -[UIViewController _loadViewFromNibNamed:bundle:] + 247
6 UIKit 0x314e9ea1 -[UIViewController loadView] + 89
7 UIKit 0x3145f78b -[UIViewController view] + 51
8 UIKit 0x3146bc39 -[UIViewController contentScrollView] + 25
9 UIKit 0x3146baa9 -[UINavigationController _computeAndApplyScrollContentInsetDeltaForViewController:] + 37
10 UIKit 0x3146b98f -[UINavigationController _layoutViewController:] + 35
11 UIKit 0x3146b211 -[UINavigationController _startTransition:fromViewController:toViewController:] + 501
12 UIKit 0x3146af53 -[UINavigationController _startDeferredTransitionIfNeeded] + 251
13 UIKit 0x3145f673 -[UINavigationController pushViewController:transition:forceImmediate:] + 807
14 UIKit 0x3145f349 -[UINavigationController pushViewController:animated:] + 37
For some reason, deleting and reinstalling the app after the iOS 5 firmware upgrade seems to resolve the issue.
I’m utterly baffled as to what the cause could be. I’d really appreciate any thoughts you may have.
Thanks in advance!
Looks like Apple changed how they de-serialize NIBs. I had changed to shipping with uncompiled NIBs instead of shipping with compiled NIBs. Compiling NIBs again fixed the problem.