Springboard crash in BulletinBoard while app posts local notifications
Springboard crash in BulletinBoard while app posts local notifications
- Subject: Springboard crash in BulletinBoard while app posts local notifications
- From: Fritz Anderson <email@hidden>
- Date: Wed, 22 May 2013 15:24:42 -0500
iPhone 4, iOS 6.1.3, and
iPhone 5, OS unknown, can assume 6.1.+ and likely 6.1.3
iOS 6 SDK, iOS 6 target
Two users, one instance each, can't reproduce on iPhone 4, iPhone 5, or simulator.
Okay, here's what we're seeing.
We have an application that posts local notifications, about a dozen at a time.
We have a crash that has occurred only once for two users, and never reproduced, certainly not under a debugger. At about the time the notifications are posted (at a -viewDidLoad), and before the view appears, the device resets (at least to the extent of displaying the shiny-apple screen).
The app does not appear in the device crash logs. Springboard does log a crash at that time; I would guess that if Springboard crashed, there would be a reset of some kind.
The reasons I suspect notifications are:
* The timing is right for what the app is doing.
* We find the following trace for the crashed thread in Springboard:
Thread 18 name: Dispatch queue: com.apple.bulletinboard.bbserverqueue
Thread 18 Crashed:
0 libsystem_kernel.dylib 0x398e5350 __pthread_kill + 8
1 libsystem_c.dylib 0x3985c11e pthread_kill + 54
2 libsystem_c.dylib 0x3989896e abort + 90
3 libc++abi.dylib 0x38e36d4a abort_message + 70
4 libc++abi.dylib 0x38e33ff4 default_terminate() + 20
5 libobjc.A.dylib 0x393e7a74 _objc_terminate() + 144
6 libc++abi.dylib 0x38e34078 safe_handler_caller(void (*)()) + 76
7 libc++abi.dylib 0x38e34110 std::terminate() + 16
8 libc++abi.dylib 0x38e3550e __cxa_throw + 118
9 libobjc.A.dylib 0x393e79ba objc_exception_throw + 90
10 CoreFoundation 0x3168c8d4 -[__NSArrayM insertObject:atIndex:] + 764
11 BulletinBoard 0x3432d30e -[BBServer _feedsForBulletin:destinations:alwaysToLockScreen:] + 426
12 BulletinBoard 0x3432b630 -[BBServer publishBulletin:destinations:alwaysToLockScreen:] + 80
13 BulletinBoard 0x3433f8e8 -[BBServer(Publication) publishBulletinRequest:destinations:alwaysToLockScreen:] + 1416
14 BulletinBoard 0x34333ae4 -[BBServer _publishBulletinRequest:forDataProvider:forDestinations:alwaysToLockScreen:] + 56
15 BulletinBoard 0x34333aa2 -[BBServer _publishBulletinRequest:forDataProvider:forDestinations:] + 26
16 BulletinBoard 0x343320e2 __BBDataProviderAddBulletin_block_invoke_0 + 94
17 libdispatch.dylib 0x397ff11c _dispatch_call_block_and_release + 8
So -[BBServer _feedsForBulletin:destinations:alwaysToLockScreen:] tried to insert an object in a mutable array. Either the object or the index were invalid. NSMutableArray threw an exception, nobody caught it, and Springboard aborted.
There is very little on the web (other than a classdump) about crashes in BBServer, which I gather implements local notifications.
We've found nothing remarkable in the device that hosted the crash. The user had since uninstalled and reinstalled the app. (Would that delete its crash logs?) The Notification Center settings as we found them (after installation) was in-center, banner, sounds, badges, in lock screen.
Here's the post (it's in a loop of about a dozen items):
====
self.localNotification = [[UILocalNotification alloc] init];
[self.localNotification setFireDate:self.dateScheduled];
[self.localNotification setAlertBody:self.itemTitle];
[self.localNotification setApplicationIconBadgeNumber:1];
[self.localNotification setTimeZone:[NSTimeZone systemTimeZone]];
[[UIApplication sharedApplication] scheduleLocalNotification:[self localNotification]];
====
I don't see anything unusual. Some stackoverflow threads talk about putting non-NSCoding objects into the userInfo dictionary, but we don't touch that all.
If we're debugging Springboard, we're in trouble. But Apple probably runs Springboard before releasing an iOS revision, so a bug there is extremely unlikely.
— F
--
Fritz Anderson
Xcode 4 Unleashed: 4.5 supplement for free!
http://www.informit.com/store/xcode-4-unleashed-9780672333279
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden