When I run my App with xCode all loads and runs fine. When I load in Instruments and press record using a profiling template of Activity Monitor or Allocations it loads and runs fine. However if I use Zombies or Leaks the app crashes instantly. I dont even get to see it. I then access the crash logs in xcode and though the reason for the crash is Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Its almost impossible to debug the cause as each report is different.
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000010
VM Region Info: 0x10 is not in any region. Bytes before following region: 4297687024
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
UNUSED SPACE AT START
--->
__TEXT 0000000100298000-0000000100388000 [ 960K] r-x/r-x SM=COW ...p/MyApp
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [0]
Triggered by Thread: 0
Filtered syslog:
None found
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libswiftFoundation.dylib 0x0000000100cf89fc 0x100c4c000 + 707068
1 MyApp 0x0000000100310cbc specialized JSONParser.jsonURL(_:jsonType:) + 494780 (JSONParser.swift:51)
2 MyApp 0x0000000100310cbc specialized JSONParser.jsonURL(_:jsonType:) + 494780 (JSONParser.swift:51)
3 MyApp 0x00000001002efd2c StoreManager.getProductIdentifiersFromServer() + 359724 (StoreManager.swift:57)
4 MyApp 0x0000000100329db0 specialized AppDelegate.application(_:didFinishLaunchingWithOptions:) + 597424 (StoreManager.swift:46)
5 MyApp 0x0000000100326a40 @objc AppDelegate.application(_:didFinishLaunchingWithOptions:) + 584256 (AppDelegate.swift:0)
6 UIKit 0x000000018f4a1ca8 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 408
7 UIKit 0x000000018f68fe14 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 3484
8 UIKit 0x000000018f694ce4 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1680
9 UIKit 0x000000018f92db20 __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 784
10 UIKit 0x000000018fc05c78 +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 160
11 UIKit 0x000000018f92d79c -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 240
12 UIKit 0x000000018f92dfdc -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 724
13 UIKit 0x00000001900accf4 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 296
14 UIKit 0x00000001900acb7c -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 432
15 UIKit 0x000000018fe1f44c __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 220
16 UIKit 0x000000018ffb5c5c _performActionsWithDelayForTransitionContext + 112
17 UIKit 0x000000018fe1f304 -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 248
18 UIKit 0x000000018fc05318 -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 368
19 UIKit 0x000000018f6933e4 -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 540
20 UIKit 0x000000018faa7490 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 364
21 FrontBoardServices 0x00000001878d7470 -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 364
22 FrontBoardServices 0x00000001878dfd6c __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 224
23 libdispatch.dylib 0x00000001849f0ae4 _dispatch_client_callout + 16
24 libdispatch.dylib 0x00000001849f81f4 _dispatch_block_invoke_direct$VARIANT$mp + 224
25 FrontBoardServices 0x000000018790b878 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 36
26 FrontBoardServices 0x000000018790b51c -[FBSSerialQueue _performNext] + 404
27 FrontBoardServices 0x000000018790bab8 -[FBSSerialQueue _performNextFromRunLoopSource] + 56
28 CoreFoundation 0x0000000185099614 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
29 CoreFoundation 0x0000000185098e3c __CFRunLoopDoSources0 + 276
30 CoreFoundation 0x00000001850969ac __CFRunLoopRun + 1204
31 CoreFoundation 0x0000000184fb6fe8 CFRunLoopRunSpecific + 552
32 GraphicsServices 0x0000000186f7e020 GSEventRunModal + 100
33 UIKit 0x000000018f497090 UIApplicationMain + 236
34 MyApp 0x00000001002ab444 main + 78916 (AppDelegate.swift:16)
35 libdyld.dylib 0x0000000184a55fc0 start + 4
So I stop calling the line
StoreManager.getProductIdentifiersFromServer()
which stops the subsequent calls to
JSONParser.jsonURL(_:jsonType:)
Then the app crashes
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000000
VM Region Info: 0 is not in any region. Bytes before following region: 4365631488
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
UNUSED SPACE AT START
--->
__TEXT 0000000104364000-0000000104454000 [ 960K] r-x/r-x SM=COW ...p/MyApp
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [0]
Triggered by Thread: 0
Filtered syslog:
None found
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 CoreFoundation 0x0000000184fdf83c CFStringGetCharacterAtIndex + 24
1 CoreFoundation 0x000000018508e6c8 normalizeQuintuplet + 148
2 CoreFoundation 0x000000018508ee64 -[_CFXPreferences+ 917092 (SearchListAdditions) withSearchListForIdentifier:container:cloudConfigurationURL:perform:] + 108
3 CoreFoundation 0x0000000185132ae8 -[_CFXPreferences copyAppValueForKey:identifier:container:configurationURL:] + 124
4 CoreFoundation 0x0000000185135384 _CFPreferencesCopyAppValueWithContainer + 116
5 Foundation 0x0000000185a2e7d0 -[NSUserDefaults+ 51152 (NSUserDefaults) objectForKey:] + 52
6 Foundation 0x0000000185a37240 -[NSUserDefaults+ 86592 (NSUserDefaults) stringForKey:] + 24
7 MyApp 0x00000001043cc0dc specialized SettingsTableViewController.init(coder:) + 426204 (SettingsTableViewController.swift:36)
8 MyApp 0x00000001043c6a1c @objc SettingsTableViewController.init(coder:) + 403996 (SettingsTableViewController.swift:27)
9 UIKit 0x000000018f9c051c -[UIClassSwapper initWithCoder:] + 248
10 UIKit 0x000000018fb6d99c UINibDecoderDecodeObjectForValue + 688
11 UIKit 0x000000018fb6d6d4 -[UINibDecoder decodeObjectForKey:] + 312
12 UIKit 0x000000018f9c01c4 -[UIRuntimeConnection initWithCoder:] + 188
13 UIKit 0x000000018fb6d99c UINibDecoderDecodeObjectForValue + 688
14 UIKit 0x000000018fb6db14 UINibDecoderDecodeObjectForValue + 1064
15 UIKit 0x000000018fb6d6d4 -[UINibDecoder decodeObjectForKey:] + 312
16 UIKit 0x000000018f9bf514 -[UINib instantiateWithOwner:options:] + 1164
17 UIKit 0x000000018fd44068 -[UIStoryboard instantiateViewControllerWithIdentifier:] + 196
18 MyApp 0x00000001043fcfb4 specialized ApplicationsTabBarController.createViewControllerForTabBarController(storyBoardName:restorationIdentifier:tabBarItemTitle:tabBarItemTag:tabBarItemImage:tabBarItemSelectedImage:) + 626612 (ApplicationsTabBarController.swift:190)
19 MyApp 0x00000001043f93c8 ApplicationsTabBarController.setUpViewControllers() + 611272 (ApplicationsTabBarController.swift:79)
20 MyApp 0x00000001043fad04 @objc ApplicationsTabBarController.viewWillAppear(_:) + 617732 (ApplicationsTabBarController.swift:0)
21 UIKit 0x000000018f44c6b4 -[UIViewController _setViewAppearState:isAnimating:] + 616
22 UIKit 0x000000018f44c424 -[UIViewController __viewWillAppear:] + 140
23 UIKit 0x000000018f4aba60 -[UIViewController viewWillMoveToWindow:] + 704
24 UIKit 0x000000018f43bde4 -[UIView+ 97764 (Hierarchy) _willMoveToWindow:withAncestorView:] + 584
25 UIKit 0x000000018f43b0cc -[UIView+ 94412 (Internal) _addSubview:positioned:relativeTo:] + 424
26 UIKit 0x000000018f43a88c -[UIWindow addRootViewControllerViewIfPossible] + 816
27 UIKit 0x000000018f437864 -[UIWindow _setHidden:forced:] + 272
28 UIKit 0x000000018f4a5cd0 -[UIWindow makeKeyAndVisible] + 48
29 MyApp 0x00000001043f639c specialized AppDelegate.application(_:didFinishLaunchingWithOptions:) + 598940 (AppDelegate.swift:0)
30 MyApp 0x00000001043f2bc4 @objc AppDelegate.application(_:didFinishLaunchingWithOptions:) + 584644 (AppDelegate.swift:0)
31 UIKit 0x000000018f4a1ca8 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 408
32 UIKit 0x000000018f68fe14 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 3484
33 UIKit 0x000000018f694ce4 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1680
34 UIKit 0x000000018f92db20 __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 784
35 UIKit 0x000000018fc05c78 +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 160
36 UIKit 0x000000018f92d79c -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 240
37 UIKit 0x000000018f92dfdc -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 724
38 UIKit 0x00000001900accf4 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 296
39 UIKit 0x00000001900acb7c -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 432
40 UIKit 0x000000018fe1f44c __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 220
41 UIKit 0x000000018ffb5c5c _performActionsWithDelayForTransitionContext + 112
42 UIKit 0x000000018fe1f304 -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 248
43 UIKit 0x000000018fc05318 -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 368
44 UIKit 0x000000018f6933e4 -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 540
45 UIKit 0x000000018faa7490 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 364
46 FrontBoardServices 0x00000001878d7470 -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 364
47 FrontBoardServices 0x00000001878dfd6c __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 224
48 libdispatch.dylib 0x00000001849f0ae4 _dispatch_client_callout + 16
49 libdispatch.dylib 0x00000001849f81f4 _dispatch_block_invoke_direct$VARIANT$mp + 224
50 FrontBoardServices 0x000000018790b878 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 36
51 FrontBoardServices 0x000000018790b51c -[FBSSerialQueue _performNext] + 404
52 FrontBoardServices 0x000000018790bab8 -[FBSSerialQueue _performNextFromRunLoopSource] + 56
53 CoreFoundation 0x0000000185099614 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
54 CoreFoundation 0x0000000185098e3c __CFRunLoopDoSources0 + 276
55 CoreFoundation 0x00000001850969ac __CFRunLoopRun + 1204
56 CoreFoundation 0x0000000184fb6fe8 CFRunLoopRunSpecific + 552
57 GraphicsServices 0x0000000186f7e020 GSEventRunModal + 100
58 UIKit 0x000000018f497090 UIApplicationMain + 236
59 MyApp 0x0000000104378b3c main + 84796 (AppDelegate.swift:16)
60 libdyld.dylib 0x0000000184a55fc0 start + 4
Does not seem to matter what functions I do or do not call I get a crash. It seems to me that its a system call and not one that I make thats causing the crash. Is it just me or is Instruments 9.3 crashing on Zombies and Or Leaks for anyone else?
I was having a similar problem, and I solved it choosing Blank
template instead of Leaks
and then I manually add Allocations
and Leaks
with the + button at the top right of the screen.
It was solved on Xcode Version 9.4 (9F1027a)
Apple Developer forums had a helpful response (https://forums.developer.apple.com/thread/97592):
After setting up the Leaks or Zombies instrument but before beginning recording, go to “File” > “Recording Options...” (⌘⌥R) and uncheck “Record Reference Counts”. This should allow the instrument to run normally.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With