Prevent crashes when subclassing PFUser - ios

We have an App in production and received some EXC_BAD_ACCESS KERN_INVALID_ADDRESS crashes, when accessing a new variable inside User (a subclass of PFUser).
class User : PFUser {
#NSManaged var name: String!
#NSManaged var age: Int
...
var newVariable: Int = 0
}
Since Parse caches PFUser, the cached version of currentUser (from the previous version) does not contain newVariable. After calling .fetch() on User.currentUser() the App stops crashing.
Here's the crash log:
Thread : Crashed: com.apple.main-thread
0 libGSFontCache.dylib 0x2000000000000 (Missing)
1 APP 0x1001d8b54 AvatarImageView.(updateUI in _0CCBFAE82915B0F511DDDA83596201DC)() -> () (AvatarImageView.swift:119)
2 APP 0x1001d9a48 specialized AvatarImageView.user.setter (AvatarImageView.swift:37)
3 APP 0x1001d783c AvatarImageView.user.setter (AvatarImageView.swift)
4 APP 0x1001dbea4 ProfileHeaderView.(initView in _8556F2EAEF99C54ED4DABB5A0C260DAE)() -> () (ProfileHeaderView.swift:98)
5 APP 0x1001db7f4 ProfileHeaderView.init(type : ProfileHeaderView.ViewType, user : User, buddy : Buddy?) -> ProfileHeaderView (ProfileHeaderView.swift:66)
6 APP 0x10018c49c ProfileViewController.initView() -> () (ProfileViewController.swift:123)
7 APP 0x1000d9258 BaseViewController.viewDidLoad() -> () (BaseViewController.swift:52)
8 APP 0x10018bd64 ProfileViewController.viewDidLoad() -> () (ProfileViewController.swift:79)
9 APP 0x10018bf88 #objc ProfileViewController.viewDidLoad() -> () (ProfileViewController.swift)
10 UIKit 0x1862ec0c0 -[UIViewController loadViewIfRequired] + 996
11 UIKit 0x1863abda8 -[UINavigationController _layoutViewController:] + 72
12 UIKit 0x1863abc80 -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 416
13 UIKit 0x1863aaec8 -[UINavigationController _startTransition:fromViewController:toViewController:] + 144
14 UIKit 0x1863aaa6c -[UINavigationController _startDeferredTransitionIfNeeded:] + 868
15 UIKit 0x1863aa694 -[UINavigationController __viewWillLayoutSubviews] + 60
16 UIKit 0x1863aa5fc -[UILayoutContainerView layoutSubviews] + 208
17 UIKit 0x1862e7778 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 656
18 QuartzCore 0x183cf6b2c -[CALayer layoutSublayers] + 148
19 QuartzCore 0x183cf1738 CA::Layer::layout_if_needed(CA::Transaction*) + 292
20 QuartzCore 0x183cf15f8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32
21 QuartzCore 0x183cf0c94 CA::Context::commit_transaction(CA::Transaction*) + 252
22 QuartzCore 0x183cf09dc CA::Transaction::commit() + 512
23 QuartzCore 0x183cea0cc CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 80
24 CoreFoundation 0x1815b0588 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
25 CoreFoundation 0x1815ae32c __CFRunLoopDoObservers + 372
26 CoreFoundation 0x1814dd6a0 CFRunLoopRunSpecific + 416
27 UIKit 0x18635a580 -[UIApplication _run] + 460
28 UIKit 0x186354d90 UIApplicationMain + 204
29 APP 0x1000c3dfc main (AppDelegate.swift:17)
30 libdispatch.dylib 0x18107e8b8 (Missing)

Related

FMDatabaseQueue crash

I'm using FMDB in my app. I'm seeing this random crash happening during the app launch.
-(void) addActivities{
[[[DB sharedManager]getSecureQueue] inTransaction:^(FMDatabase * _Nonnull db, BOOL * _Nonnull rollback) {
//process data
}];
}
getSecureQueue returns a FMDatabaseQueue:
_secureQueue= [FMDatabaseQueue databaseQueueWithPath:dbPath];
I checked that _SecureQueue is not nil.
The crash log:
Crashed: fmdb.<FMDatabaseQueue: 0x170242610>
0 libdispatch.dylib 0x18ad83634 _dispatch_barrier_sync_f_slow + 560
1 FMDB 0x101040bd8 -[FMDatabaseQueue beginTransaction:withBlock:] (FMDatabaseQueue.m:228)
2 FMDB 0x101040bd8 -[FMDatabaseQueue beginTransaction:withBlock:] (FMDatabaseQueue.m:228)
3 iPhoneHandheldACT 0x1001e4870 -[HHCTabBarController addActivities] (HHCTabBarController.m:145)
4 iPhoneHandheldACT 0x1001e553c __49-[HHCTabBarController migrateIntoRealm]_block_invoke (HHCTabBarController.m:226)
5 FMDB 0x101040ac4 __30-[FMDatabaseQueue inDatabase:]_block_invoke (FMDatabaseQueue.m:188)
6 libdispatch.dylib 0x18ad729a0 _dispatch_client_callout + 16
7 libdispatch.dylib 0x18ad7fee0 _dispatch_barrier_sync_f_invoke + 84
8 FMDB 0x101040a34 -[FMDatabaseQueue inDatabase:] (FMDatabaseQueue.m:202)
9 iPhoneHandheldACT 0x1001e4ce8 -[HHCTabBarController migrateIntoRealm] (HHCTabBarController.m:181)
10 iPhoneHandheldACT 0x1001e4270 -[HHCTabBarController viewDidLoad] (HHCTabBarController.m:77)
11 UIKit 0x191fecb04 -[UIViewController loadViewIfRequired] + 1036
12 UIKit 0x192004590 -[UIViewController __viewWillAppear:] + 132
13 UIKit 0x192188e18 -[UINavigationController _startCustomTransition:] + 1144
14 UIKit 0x1920a37bc -[UINavigationController _startDeferredTransitionIfNeeded:] + 676
15 UIKit 0x1920a3424 -[UINavigationController __viewWillLayoutSubviews] + 64
16 UIKit 0x1920a3388 -[UILayoutContainerView layoutSubviews] + 188
17 UIKit 0x191fe9cc0 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1200
18 QuartzCore 0x18f1da274 -[CALayer layoutSublayers] + 148
19 QuartzCore 0x18f1cede8 CA::Layer::layout_if_needed(CA::Transaction*) + 292
20 QuartzCore 0x18f1ceca8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32
21 QuartzCore 0x18f14a34c CA::Context::commit_transaction(CA::Transaction*) + 252
22 QuartzCore 0x18f1713ac CA::Transaction::commit() + 504
23 QuartzCore 0x18f171e78 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 120
24 CoreFoundation 0x18be689a8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
25 CoreFoundation 0x18be66630 __CFRunLoopDoObservers + 372
26 CoreFoundation 0x18bd96dc4 CFRunLoopRunSpecific + 456
27 UIFoundation 0x191f95134 -[NSHTMLReader _loadUsingWebKit] + 1764
28 Foundation 0x18c9af50c __NSThreadPerformPerform + 340
29 CoreFoundation 0x18be6942c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
30 CoreFoundation 0x18be68d9c __CFRunLoopDoSources0 + 540
31 CoreFoundation 0x18be669a8 __CFRunLoopRun + 744
32 CoreFoundation 0x18bd96da4 CFRunLoopRunSpecific + 424
33 GraphicsServices 0x18d801074 GSEventRunModal + 100
34 UIKit 0x192051c9c UIApplicationMain + 208
35 iPhoneHandheldACT 0x1000a7bf4 main (main.m:16)
36 libdyld.dylib 0x18ada559c start + 4
On line 8, it looks like you're already inside an inDatabase call (i.e. you're already in FMDatabaseQueue when you try to enter the queue again). Don't try to enter serial queue when you're already inside that serial queue. At best, you'll deadlock. If you do that at the wrong time (e.g. during app startup), the watchdog process will kill your app with exception code 0x8badf00d ("ate bad food"; lol; see Technical Note TN2151: Understanding and Analyzing Application Crash Reports).

What's the cause of crash "Crashed: com.apple.main-thread EXC_BREAKPOINT"

I'm getting this crash on crashlytics (fabric), but unable to reproduce it or understand its origin based on the traceback.
Crashed: com.apple.main-thread
0 MyApp 0x1001080a0 MyViewController.viewWillAppear(Bool) -> () (MyViewController.swift:135)
1 MyApp 0x1001080d0 #objc MyViewController.viewWillAppear(Bool) -> () (MyViewController.swift)
2 UIKit 0x18868bbf4 -[UIViewController _setViewAppearState:isAnimating:] + 632
3 UIKit 0x18868b964 -[UIViewController __viewWillAppear:] + 156
4 UIKit 0x1888101d4 -[UINavigationController _startCustomTransition:] + 1144
5 UIKit 0x18872ab78 -[UINavigationController _startDeferredTransitionIfNeeded:] + 676
6 UIKit 0x18872a7e0 -[UINavigationController __viewWillLayoutSubviews] + 64
7 UIKit 0x18872a744 -[UILayoutContainerView layoutSubviews] + 188
8 UIKit 0x18867107c -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1200
9 QuartzCore 0x185861274 -[CALayer layoutSublayers] + 148
10 QuartzCore 0x185855de8 CA::Layer::layout_if_needed(CA::Transaction*) + 292
11 QuartzCore 0x185855ca8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32
12 QuartzCore 0x1857d134c CA::Context::commit_transaction(CA::Transaction*) + 252
13 QuartzCore 0x1857f83ac CA::Transaction::commit() + 504
14 UIKit 0x1888f2524 _UIApplicationFlushRunLoopCATransactionIfTooLate + 172
15 UIKit 0x188e689f8 __handleEventQueue + 4916
16 UIKit 0x188e68b9c __handleHIDEventFetcherDrain + 148
17 CoreFoundation 0x1824f142c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
18 CoreFoundation 0x1824f0d9c __CFRunLoopDoSources0 + 540
19 CoreFoundation 0x1824ee9a8 __CFRunLoopRun + 744
20 CoreFoundation 0x18241eda4 CFRunLoopRunSpecific + 424
21 GraphicsServices 0x183e88074 GSEventRunModal + 100
22 UIKit 0x1886d9058 UIApplicationMain + 208
23 MyApp 0x1009052fc main (AppDelegate.swift:16)
24 libdyld.dylib 0x18142d59c start + 4
The code in MyViewController:
#IBOutlet weak var someConstraint: NSLayoutConstraint!
#IBOutlet weak var button: UIButton!
let minHeight: CGFloat = 2.0
let cValue: CGFloat = 32.0
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let aValue = button.frame.origin.y - UIApplication.shared.statusBarFrame.height
let bValue = button.bounds.height + minHeight
someConstraint.constant = max(aValue - bValue, cValue) // --> Crash here, line 135
}
Update: SomeConstraint is not nil.

SIGTRAP on set background color

I have a swift view controller that is a subclass of JSQMessagesViewController and I'm seeing a weird SIGTRAP in viewDidLoad. Namely it occasionally happens when I try to set the background color. It happens sporadically so I'm not sure what might be happening.
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.whiteColor()
}
Here's the crash log:
Thread 0 Crashed:
0 MyApp 0x00000001000ecc74 MyApp.MessageDetailViewController.viewDidLoad ()() (MessageDetailViewController.swift:130)
1 MyApp 0x00000001000ecc94 #objc MyApp.MessageDetailViewController.viewDidLoad ()() (MessageDetailViewController.swift:0)
2 UIKit 0x0000000187834b40 -[UIViewController loadViewIfRequired] + 992
3 UIKit 0x0000000187834744 -[UIViewController view] + 24
4 UIKit 0x00000001878f4f88 -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 308
5 UIKit 0x00000001878f4238 -[UINavigationController _startTransition:fromViewController:toViewController:] + 140
6 UIKit 0x00000001878f3ddc -[UINavigationController _startDeferredTransitionIfNeeded:] + 864
7 UIKit 0x00000001878f3a04 -[UINavigationController __viewWillLayoutSubviews] + 56
8 UIKit 0x00000001878f396c -[UILayoutContainerView layoutSubviews] + 204
9 UIKit 0x00000001878300e4 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 652
10 QuartzCore 0x00000001851d6a28 -[CALayer layoutSublayers] + 144
11 QuartzCore 0x00000001851d1634 CA::Layer::layout_if_needed(CA::Transaction*) + 288
12 QuartzCore 0x00000001851d14f4 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 28
13 QuartzCore 0x00000001851d0b24 CA::Context::commit_transaction(CA::Transaction*) + 248
14 QuartzCore 0x00000001851d086c CA::Transaction::commit() + 508
15 QuartzCore 0x00000001851c9dd8 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 76
16 CoreFoundation 0x00000001826a07b0 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 28
17 CoreFoundation 0x000000018269e554 __CFRunLoopDoObservers + 368
18 CoreFoundation 0x000000018269e984 __CFRunLoopRun + 924
19 CoreFoundation 0x00000001825c8d10 CFRunLoopRunSpecific + 380
20 GraphicsServices 0x0000000183eb0088 GSEventRunModal + 176
21 UIKit 0x000000018789df70 UIApplicationMain + 200
22 MyApp 0x00000001000286b4 main (main.m:16)
23 ??? 0x00000001821668b8 0x0 + 0
The controller is presented modally in a navigation controller but then can transition to being pushed onto the nav stack (similar to composing a message in the stock sms app). Maybe it is possible that the lack of animation is causing an issue?
func controllerDidSendMessageInThread(controller: MessageDetailViewController, thread: Thread) {
self.dismissViewControllerAnimated(false, completion: nil)
let detail = MessageDetailViewController(thread: thread)
self.navigationController?.pushViewController(detail, animated: animated)
}

Unable to find root cause of random crash on tabbar

I have a side panel view (like side drawer) in my iPad app which contains tabbar having 2 tabs. This view is beyond the ipad visible screen and become visible once we pull it from left side. This get initialize always on app launch. It crashes randomly on iOS 7.0.3 and 7.0.4 mostly on iPad 4 models. I can't reproduce it in debug mode while debugger is attached and reproducing frequency is 1% or less on release build.
It will not an iOS issue but any guess or anybody faced and solved similar problem?
Crash report:
Hardware Model: iPad3,4
Code Type: ARM (Native)
OS Version: iOS 7.0.4 (11B554a)
Crash report:
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Triggered by Thread: 12
Thread 0:
0 libsystem_kernel.dylib 0x38d7ebb4 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x38df349c _os_lock_handoff_lock_slow + 48
2 libsystem_malloc.dylib 0x38db90f8 szone_free_definite_size + 328
3 libRIP.A.dylib 0x2e4ffb72 ripc_ReleaseClipState + 34
4 libRIP.A.dylib 0x2e503438 ripc_EndLayer + 80
5 CoreGraphics 0x2e1c25e8 CGContextEndTransparencyLayer + 36
6 UIKit 0x309e4d2a -[UIImage(TabBarItemImages) _tabBarItemImageWithTintColor:selected:metrics:style:forScreenScale:] + 902
7 UIKit 0x309e5070 -[UIImage(TabBarItemImages) _unselectedTabBarItemImageWithTintColor:metrics:style:forScreenScale:] + 36
8 UIKit 0x309e4748 -[UITabBarItem(Static) _updateImageWithTintColor:isSelected:getImageOffset:] + 552
9 UIKit 0x309e414c -[UITabBarItem(Static) _createViewForTabBar:showingBadge:withTint:idiom:] + 956
10 UIKit 0x309e3d82 -[UITabBarItem(Static) _createViewForTabBar:showingBadge:idiom:] + 34
11 UIKit 0x309e0028 -[UITabBarItem(Static) _updateViewForIdiom:positionItems:] + 156
12 UIKit 0x309e74ca -[UITabBar(Static) _configureItems:] + 402
13 UIKit 0x309e6b7e -[UITabBar(Static) _positionTabBarButtons:ignoringItem:] + 1270
14 UIKit 0x309e3b38 -[UITabBar setItems:animated:] + 1352
15 UIKit 0x309e3522 -[UITabBarController _rebuildTabBarItemsAnimated:] + 798
16 UIKit 0x309e7a74 -[UITabBarController _setSelectedViewController:] + 72
17 UIKit 0x308cdcf2 +[UIView(Animation) performWithoutAnimation:] + 70
18 UIKit 0x309eb470 -[UITabBarController _selectDefaultViewControllerIfNecessaryWithAppearanceTransitions:] + 216
19 UIKit 0x309ea8e6 -[UITabBarController viewWillAppear:] + 130
20 UIKit 0x308d66fa -[UIViewController _setViewAppearState:isAnimating:] + 342
21 CoreFoundation 0x2e080800 __53-[__NSArrayI enumerateObjectsWithOptions:usingBlock:]_block_invoke + 48
22 CoreFoundation 0x2e07a21a -[__NSArrayI enumerateObjectsWithOptions:usingBlock:] + 218
23 UIKit 0x308d6876 -[UIViewController _setViewAppearState:isAnimating:] + 722
24 UIKit 0x30a4ccfa -[UINavigationController _startCustomTransition:] + 842
25 UIKit 0x3096aa12 -[UINavigationController _startDeferredTransitionIfNeeded:] + 414
26 UIKit 0x3096a81c -[UINavigationController __viewWillLayoutSubviews] + 40
27 UIKit 0x3096a7b4 -[UILayoutContainerView layoutSubviews] + 180
28 UIKit 0x308bc34e -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 342
29 QuartzCore 0x3054293e -[CALayer layoutSublayers] + 138
30 QuartzCore 0x3053e162 CA::Layer::layout_if_needed(CA::Transaction*) + 346
31 QuartzCore 0x3053dff4 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 12
32 QuartzCore 0x3053da08 CA::Context::commit_transaction(CA::Transaction*) + 224
33 QuartzCore 0x3053d81a CA::Transaction::commit() + 310
34 QuartzCore 0x30537548 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 52
35 CoreFoundation 0x2e102f66 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 18
36 CoreFoundation 0x2e1008f2 __CFRunLoopDoObservers + 282
37 CoreFoundation 0x2e100c3e __CFRunLoopRun + 734
38 CoreFoundation 0x2e06b46c CFRunLoopRunSpecific + 520
39 CoreFoundation 0x2e06b24e CFRunLoopRunInMode + 102
40 GraphicsServices 0x32d722e6 GSEventRunModal + 134
41 UIKit 0x30920840 UIApplicationMain + 1132
42 MyApp 0x0006b5f2 0x64000 + 30194
43 libdyld.dylib 0x38cdaab4 start + 0
Thread 12 Crashed:
0 libsystem_kernel.dylib 0x38d911fc __pthread_kill + 8
1 libsystem_pthread.dylib 0x38df8a4e pthread_kill + 54
2 libsystem_c.dylib 0x38d42082 __abort + 74
3 libsystem_c.dylib 0x38d42034 abort + 84
4 libsystem_malloc.dylib 0x38dbf758 szone_error + 312
5 libsystem_malloc.dylib 0x38dbf9d4 free_list_checksum_botch + 24
6 libsystem_malloc.dylib 0x38dba1a4 tiny_free_list_remove_ptr + 76
7 libsystem_malloc.dylib 0x38db9770 szone_free_definite_size + 1984
8 libsystem_blocks.dylib 0x38cf7ac2 _Block_release + 214
9 libdispatch.dylib 0x38ccae76 _dispatch_queue_drain + 370
10 libdispatch.dylib 0x38cc7f8e _dispatch_queue_invoke + 38
11 libdispatch.dylib 0x38ccb742 _dispatch_root_queue_drain + 74
12 libdispatch.dylib 0x38ccb9c0 _dispatch_worker_thread2 + 52
13 libsystem_pthread.dylib 0x38df5dfc _pthread_wqthread + 296
14 libsystem_pthread.dylib 0x38df5cc0 start_wqthread + 4
Another random crash in similar case:
Thread 0 Crashed:
0 CoreFoundation 0x311e9728 -[__NSDictionaryM objectForKey:] + 100
1 UIKit 0x33a3e855 -[UILabel _setFont:] + 209
2 UIKit 0x33b5a411 -[UITabBarButton initWithImage:selectedImage:label:withInsets:] + 293
3 UIKit 0x33b59223 -[UITabBarItem(Static) _createViewForTabBar:showingBadge:withTint:idiom:] + 1171
4 UIKit 0x33b58d87 -[UITabBarItem(Static) _createViewForTabBar:showingBadge:idiom:] + 39
5 UIKit 0x33b5502d -[UITabBarItem(Static) _updateViewForIdiom:positionItems:] + 161
6 UIKit 0x33b5c4cf -[UITabBar(Static) _configureItems:] + 407
7 UIKit 0x33b5bb83 -[UITabBar(Static) _positionTabBarButtons:ignoringItem:] + 1275
8 UIKit 0x33b58b3d -[UITabBar setItems:animated:] + 1357
9 UIKit 0x33b58527 -[UITabBarController _rebuildTabBarItemsAnimated:] + 803
10 UIKit 0x33b5ca79 -[UITabBarController _setSelectedViewController:] + 77
11 UIKit 0x33a42cf5 +[UIView(Animation) performWithoutAnimation:] + 73
12 UIKit 0x33b60475 -[UITabBarController _selectDefaultViewControllerIfNecessaryWithAppearanceTransitions:] + 221
13 UIKit 0x33b5f8eb -[UITabBarController viewWillAppear:] + 135
14 UIKit 0x33a4b6ff -[UIViewController _setViewAppearState:isAnimating:] + 347
15 CoreFoundation 0x311f5803 __53-[__NSArrayI enumerateObjectsWithOptions:usingBlock:]_block_invoke + 51
16 CoreFoundation 0x311ef21d -[__NSArrayI enumerateObjectsWithOptions:usingBlock:] + 221
17 UIKit 0x33a4b87b -[UIViewController _setViewAppearState:isAnimating:] + 727
18 UIKit 0x33bc1cff -[UINavigationController _startCustomTransition:] + 847
19 UIKit 0x33adfa17 -[UINavigationController _startDeferredTransitionIfNeeded:] + 419
20 UIKit 0x33adf821 -[UINavigationController __viewWillLayoutSubviews] + 45
21 UIKit 0x33adf7b9 -[UILayoutContainerView layoutSubviews] + 185
22 UIKit 0x33a31353 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 347
23 QuartzCore 0x336b7943 -[CALayer layoutSublayers] + 143
24 QuartzCore 0x336b3167 CA::Layer::layout_if_needed(CA::Transaction*) + 351
25 QuartzCore 0x336b2ff9 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 17
26 QuartzCore 0x336b2a0d CA::Context::commit_transaction(CA::Transaction*) + 229
27 QuartzCore 0x336b281f CA::Transaction::commit() + 315
28 QuartzCore 0x336ac54d CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 57
29 CoreFoundation 0x31277f69 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 21
30 CoreFoundation 0x312758f7 __CFRunLoopDoObservers + 287
31 CoreFoundation 0x31275c43 __CFRunLoopRun + 739
32 CoreFoundation 0x311e0471 CFRunLoopRunSpecific + 525
33 CoreFoundation 0x311e0253 CFRunLoopRunInMode + 107
34 GraphicsServices 0x35ee12eb GSEventRunModal + 139
35 UIKit 0x33a95845 UIApplicationMain + 1137
36 SofTestM 0x000545f7 0x4d000 + 30199
The second crash is at time of setting font at
UITabBar-->UITabBarButton->UILabel (of UITabBarButton) _setFont:
I feel this random crashes might be due to memory leaks in your application.Pardon me if i am wrong.
In your logs it is seen that you use CoreGraphics.Releasing Core Graphics( even if you have ARC) is a bit tricky as it is not 100% memory leaf proof .That is it at times takes a while to get released.
So suppose you are using core graphic objects whithin a loop then it is certain that your ipad memory will go out of bounds.

UIkit crashes also not able to reproduce

Thread 0: Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x3a6285b0 objc_msgSend + 15
1 UIKit 0x348285f5 -[UINavigationController _startTransition:fromViewController:toViewController:] + 92
2 UIKit 0x348284c1 -[UINavigationController _startDeferredTransitionIfNeeded:] + 324
3 UIKit 0x347f94e9 -[UILayoutContainerView layoutSubviews] + 180
4 UIKit 0x347b8803 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 258
5 QuartzCore 0x34562d8b -[CALayer layoutSublayers] + 214
6 QuartzCore 0x34562929 CA::Layer::layout_if_needed(CA::Transaction*) + 460
7 QuartzCore 0x3456385d CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 16
8 QuartzCore 0x34563243 CA::Context::commit_transaction(CA::Transaction*) + 238
9 QuartzCore 0x34563051 CA::Transaction::commit() + 316
10 UIKit 0x34988369 -[UIApplication _sendOrderedOutContextsAndInvalidate:] + 112
11 UIKit 0x3483863f orderOutContextObserverCallout + 34
12 CoreFoundation 0x329826cd __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 20
13 CoreFoundation 0x329809c1 __CFRunLoopDoObservers + 276
14 CoreFoundation 0x32980c91 __CFRunLoopRun + 608
15 CoreFoundation 0x328f3ebd CFRunLoopRunSpecific + 356
16 CoreFoundation 0x328f3d49 CFRunLoopRunInMode + 104
17 GraphicsServices 0x364a62eb GSEventRunModal + 74
18 UIKit 0x34809301 UIApplicationMain + 1120
19 test 0x000f610f main (main.m:16)
I get this error in my crashlytics but not able to reproduce this error. Can any one help me to solve this how can i get rid of this crash.

Resources