A lot of crash reports coming in with this theme. What could be causing this? It's never in the same place twice. I am using AQXMLParser but the crashes are always in some place unconnected to that. I'm not looking for help to diagnose the specific cause of this issue, Seems like some bad memory management in the XML parser delegate (written before I came onboard). So my question: Is there is some class of programming error that would exhibit this behavior? I'd like to learn so I know what to look for in the future.
0 <MY APPLICATION> ✭ <SOME RANDOM CLASS THAT HAS NOTHING TO DO WITH XML PARSING>.m line 687
-[<SOME RANDOM THAT HAS NOTHING TO DO WITH XML PARSING>:] + 687
1
...
libxml2.2.dylib
__xmlRaiseError + 898
2 libxml2.2.dylib
xmlFatalErr + 952
3 libxml2.2.dylib
xmlParseEntityRef + 104
4 libxml2.2.dylib
xmlParseReference + 270
5 libxml2.2.dylib
xmlParseTryOrFinish + 1422
6 libxml2.2.dylib
xmlParseChunk + 212
7 MyApplication AQXMLParser.m line 1238
-[AQXMLParser stream:handleEvent:] + 1238
8 CoreFoundation
_signalEventSync + 74
9 CoreFoundation
_cfstream_shared_signalEventSync + 240
10
...
CoreFoundation
__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
11 CoreFoundation
__CFRunLoopDoSources0 + 212
12 CoreFoundation
__CFRunLoopRun + 646
13 CoreFoundation
CFRunLoopRunSpecific + 356
14 CoreFoundation
CFRunLoopRunInMode + 104
15 Foundation
-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 254
16 MyApplication AQXMLParser.m line 1115
-[AQXMLParser inputRunRunLoopInMode:] + 1115
17 MyApplication AQXMLParser.m line 1164
This turned out to be a bug in an old version of AQXMLParser. Updating to the latest fixed it.
Related
I have an iPhone app which is crashing on iOS9 devices only after being released through TestFlight or the App Store. The build specs are:
Deployment target 8.1
Base SDK: Latest iOS (iOS 10.1)
Before I post the crash logs I wanted to mention that this app has been on the app store for the past 2 years and has never had issues. We have done 3 updates to the app store this year with 2 of those being after iOS10 was released and there were no issues with iOS9 devices.
The odd thing is that we are using Crashlytics and it has reported over 600 crashes, each one of those a singular crash that points to either an internal apple framework or private API. I have got an iOS 9.2.1 device that is also crashing that I have pulled the logs from. They are starting to follow a trend however I need some help deciphering the cause of the crashes.
Crash 1:
Thread 0 Crashed:
0 libobjc.A.dylib 0x22fb3af6 objc_msgSend + 22
1 libobjc.A.dylib 0x22fc0f8a objc_object::sidetable_release(bool) + 150
2 libobjc.A.dylib 0x22fc13cc (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 388
3 FrontBoardServices 0x24aebc7e -[FBSSerialQueue _performNext] + 242
4 FrontBoardServices 0x24aebf60 -[FBSSerialQueue _performNextFromRunLoopSource] + 44
5 CoreFoundation 0x2379d256 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
6 CoreFoundation 0x2379ce46 __CFRunLoopDoSources0 + 454
7 CoreFoundation 0x2379b1ae __CFRunLoopRun + 806
8 CoreFoundation 0x236edbb8 CFRunLoopRunSpecific + 516
9 CoreFoundation 0x236ed9ac CFRunLoopRunInMode + 108
10 UIKit 0x279dfa16 -[UIApplication _run] + 526
11 UIKit 0x279d9fb4 UIApplicationMain + 144
12 Where Next 0x000a7816 main (main.m:16)
13 libdyld.dylib 0x233a0872 start + 2
Crash 2:
Thread 0 Crashed:
0 libobjc.A.dylib 0x22fb3af6 objc_msgSend + 22
1 CoreUI 0x277e3022 -[CUICatalog _resolvedRenditionKeyFromThemeRef:withBaseKey:scaleFactor:devic eIdiom:deviceSubtype:sizeClassHorizontal:sizeClassVertical:memoryClass:graphicsClass:graphicsFallBackOrder:] + 646
2 CoreUI 0x277e2d98 -[CUICatalog _resolvedRenditionKeyForName:scaleFactor:deviceIdiom:deviceSubt ype:sizeClassHorizontal:sizeClassVertical:memoryClass:graphicsClass:graphicsFallBackOrder:withBaseKeySelector:] + 284
3 CoreUI 0x277e252a -[CUICatalog namedLookupWithName:scaleFactor:deviceIdiom:deviceSubtype:sizeClassHorizontal:sizeClassVertical:] + 94
4 UIKit 0x28183a2c __98-[_UIAssetManager imageNamed:scale:idiom:subtype:cachingOptions:sizeClassPair:attachCatalogImage:]_block_invoke + 496
5 UIKit 0x2818377e -[_UIAssetManager imageNamed:scale:idiom:subtype:cachingOptions:sizeClassPair:attachCatalogImage:] + 230
6 UIKit 0x2798bcd4 -[_UIAssetManager imageNamed:scale:idiom:subtype:] + 108
7 UIKit 0x2798bc62 -[_UIAssetManager imageNamed:idiom:subtype:] + 46
8 UIKit 0x2798bc2e -[_UIAssetManager imageNamed:idiom:] + 46
9 UIKit 0x27e1e438 -[UIImageNibPlaceholder initWithCoder:] + 456
10 UIKit 0x27f32180 UINibDecoderDecodeObjectForValue + 780
11 UIKit 0x27f31e68 -[UINibDecoder decodeObjectForKey:] + 296
12 UIKit 0x27e0a602 -[UIButtonContent initWithCoder:] + 382
13 UIKit 0x27f32180 UINibDecoderDecodeObjectForValue + 780
14 UIKit 0x27f3250c UINibDecoderDecodeObjectForValue + 1688
15 UIKit 0x27f31e68 -[UINibDecoder decodeObjectForKey:] + 296
16 UIKit 0x27e0d03c -[UIButton initWithCoder:] + 748
17 UIKit 0x27f32180 UINibDecoderDecodeObjectForValue + 780
18 UIKit 0x27f31e68 -[UINibDecoder decodeObjectForKey:] + 296
19 UIKit 0x27e1d202 -[UIRuntimeConnection initWithCoder:] + 114
20 UIKit 0x27e1d88c -[UIRuntimeEventConnection initWithCoder:] + 52
21 UIKit 0x27f32180 UINibDecoderDecodeObjectForValue + 780
22 UIKit 0x27f32112 UINibDecoderDecodeObjectForValue + 670
23 UIKit 0x27f31e68 -[UINibDecoder decodeObjectForKey:] + 296
24 UIKit 0x27e1c796 -[UINib instantiateWithOwner:options:] + 1110
25 UIKit 0x27cd6676 -[UIViewController _loadViewFromNibNamed:bundle:] + 322
26 UIKit 0x27aab9d6 -[UIViewController loadView] + 142
27 UIKit 0x27971a0a -[UIViewController loadViewIfRequired] + 150
28 UIKit 0x27971958 -[UIViewController view] + 24
29 UIKit 0x281edf4a __67-[UIStoryboardEmbedSegueTemplate newDefaultPerformHandlerForSegue:]_block_invoke + 498
30 UIKit 0x280642d4 -[UIStoryboardSegueTemplate _performWithDestinationViewController:sender:] + 432
31 UIKit 0x28064102 -[UIStoryboardSegueTemplate _perform:] + 66
32 UIKit 0x28064374 -[UIStoryboardSegueTemplate perform:] + 132
33 UIKit 0x27971bca -[UIViewController loadViewIfRequired] + 598
34 UIKit 0x27971958 -[UIViewController view] + 24
35 UIKit 0x279786d0 -[UIWindow addRootViewControllerViewIfPossible] + 68
36 UIKit 0x27975bf2 -[UIWindow _setHidden:forced:] + 278
37 UIKit 0x279ea914 -[UIWindow makeKeyAndVisible] + 48
38 UIKit 0x27c0f11c -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 3320
39 UIKit 0x27c12f0e -[UIApplication _runWithMainScene:transitionContext:completion:] + 1570
40 UIKit 0x27c26c14 __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke3228 + 36
41 UIKit 0x27c103f6 -[UIApplication workspaceDidEndTransaction:] + 134
42 FrontBoardServices 0x24aebc74 -[FBSSerialQueue _performNext] + 232
43 FrontBoardServices 0x24aebf60 -[FBSSerialQueue _performNextFromRunLoopSource] + 44
44 CoreFoundation 0x2379d256 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
45 CoreFoundation 0x2379ce46 __CFRunLoopDoSources0 + 454
46 CoreFoundation 0x2379b1ae __CFRunLoopRun + 806
47 CoreFoundation 0x236edbb8 CFRunLoopRunSpecific + 516
48 CoreFoundation 0x236ed9ac CFRunLoopRunInMode + 108
49 UIKit 0x279dfa16 -[UIApplication _run] + 526
50 UIKit 0x279d9fb4 UIApplicationMain + 144
51 Where Next 0x000e8816 main (main.m:16)
52 libdyld.dylib 0x233a0872 start + 2
Crash 3:
Thread 0 Crashed:
0 libsystem_malloc.dylib 0x2349c43a tiny_free_list_remove_ptr + 126
1 libsystem_malloc.dylib 0x2349b4d0 szone_free_definite_size + 932
2 libcache.dylib 0x2330d6f4 cache_set_name + 20
3 CoreFoundation 0x2372eb94 -[NSCache setName:] + 136
4 CoreUI 0x277e2f0e -[CUICatalog _resolvedRenditionKeyFromThemeRef:withBaseKey:scaleFactor:devic eIdiom:deviceSubtype:sizeClassHorizontal:sizeClassVertical:memoryClass:graphicsClass:graphicsFallBackOrder:] + 370
5 CoreUI 0x277e2d98 -[CUICatalog _resolvedRenditionKeyForName:scaleFactor:deviceIdiom:deviceSubt ype:sizeClassHorizontal:sizeClassVertical:memoryClass:graphicsClass:graphicsFallBackOrder:withBaseKeySelector:] + 284
6 CoreUI 0x277e252a -[CUICatalog namedLookupWithName:scaleFactor:deviceIdiom:deviceSubtype:sizeClassHorizontal:sizeClassVertical:] + 94
7 UIKit 0x28183a2c __98-[_UIAssetManager imageNamed:scale:idiom:subtype:cachingOptions:sizeClassPair:attachCatalogImage:]_block_invoke + 496
8 UIKit 0x2818377e -[_UIAssetManager imageNamed:scale:idiom:subtype:cachingOptions:sizeClassPair:attachCatalogImage:] + 230
9 UIKit 0x28183f50 -[_UIAssetManager imageNamed:withTrait:] + 408
10 UIKit 0x27c4e94c +[UIImage imageNamed:inBundle:compatibleWithTraitCollection:] + 172
11 UIKit 0x27aae536 +[UIImage imageNamed:] + 110
12 Where Next 0x000e555e -[PreferenceObject resetLocations] (PreferenceObject.m:184)
13 Where Next 0x000e4b6e __33+[PreferenceObject sharedManager]_block_invoke (PreferenceObject.m:92)
14 libdispatch.dylib 0x23377dc2 _dispatch_client_callout + 22
15 libdispatch.dylib 0x233789b2 dispatch_once_f + 62
16 Where Next 0x000e4980 +[PreferenceObject sharedManager] (once.h:75)
17 Where Next 0x00102440 -[AppDelegate application:didFinishLaunchingWithOptions:] (AppDelegate.m:57)
18 Where Next 0x002ced6a VMDidFinishLaunchingWithOptions (UIApplication+VMRuntime.m:138)
19 UIKit 0x279e664e -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 394
20 UIKit 0x27c0f032 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 3086
21 UIKit 0x27c12f0e -[UIApplication _runWithMainScene:transitionContext:completion:] + 1570
22 UIKit 0x27c26c14 __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke3228 + 36
23 UIKit 0x27c103f6 -[UIApplication workspaceDidEndTransaction:] + 134
24 FrontBoardServices 0x24aebc74 -[FBSSerialQueue _performNext] + 232
25 FrontBoardServices 0x24aebf60 -[FBSSerialQueue _performNextFromRunLoopSource] + 44
26 CoreFoundation 0x2379d256 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
27 CoreFoundation 0x2379ce46 __CFRunLoopDoSources0 + 454
28 CoreFoundation 0x2379b1ae __CFRunLoopRun + 806
29 CoreFoundation 0x236edbb8 CFRunLoopRunSpecific + 516
30 CoreFoundation 0x236ed9ac CFRunLoopRunInMode + 108
31 UIKit 0x279dfa16 -[UIApplication _run] + 526
32 UIKit 0x279d9fb4 UIApplicationMain + 144
33 Where Next 0x00103816 main (main.m:16)
34 libdyld.dylib 0x233a0872 start + 2
The last two crashes look like they may be failing on finding an image asset... However because I cannot get this to replicate in debug mode or any form of "run" from Xcode I am stuck.
Appreciate the help community!
The same problem occurs to my app. It crashes in iOS9 on release only through TestFlight or AppStore.
See the accepted answer https://forums.developer.apple.com/thread/60919 . It works for me,and I fixed the bug.
How to resolve "ERROR ITMS-90682: Invalid Bundle - The asset catalog at 'Payload/XXXXX/Assets.car' can't contain 16-bit or P3 assets if the app supports iOS 8 or earlier."
With Xcode 8 GM, this error will occur if you include 16-bit or P3 assets in an app submission targeting iOS releases earlier then iOS 9.3. If your app requires wide color functionality you must change your Deployment Target to iOS 9.3 or later. If your app does not require wide color functionality and you wish to deploy it to older iOS versions then you should replace all 16-bit or P3 assets with 8-bit sRGB assets. You can find 16-bit or P3 assets by running “assetutil” on the asset catalog named in the error message from iTunes Connect. The following steps outline the process:
Create an Inspectable .ipa file. In the Xcode Organizer (Xcode->Window->Organizer), select an archive to inspect, click “Export...", and choose "Export for Enterprise or Ad-Hoc Deployment". This will create a local copy of the .ipa file for your app.
Locate that .ipa file and change its the extension to .zip.
Expand the .zip file. This will produce a Payload folder containing your .app bundle.
Open a terminal and change the working directory to the top level of your .app bundle cd path/to/Payload/your.app
Use the find tool to locate Assets.car files in your .app bundle as shown below: find . -name 'Assets.car'
Use the assetutil tool to find any 16-bit or P3 assets, in each Assets.car your application has as shown below. : sudo xcrun --sdk iphoneos assetutil --info /path/to/a/Assets.car > /tmp/Assets.json
Examine the resulting /tmp/Assets.json and look for any contents containing “DisplayGamut": “P3” and its associated “Name". This will be the name of your imageset containing one or more 16-bit or P3 assets.
Replace those assets with 8-bit / sRGB assets, then rebuild your app.
Update: If your Deployment Target is set to either 8.3 or 8.4 and you have an asset catalog then you will receive this same error message, even if you do not actually have 16-bit or P3 assets. In this case you will either need to lower your Deployment Target to 8.2, or move it up to 9.x.
Release crashes (crashes that happen on builds sent through the App Store or TestFlight) can be tough to nail down. I had one which was crashing on NSArray's containsObject: function, and could not reproduce it myself, or so I thought.
I did the following to reproduce the bug.
Went to Product -> Scheme -> Edit Scheme...
Clicked on the "Info" tab for my standard debug scheme
Changed the build configuration from "Debug" to "Release"
Rebuilt and ran the project
In some cases, this is not enough to reproduce a release crash. I did the next steps to reproduce it.
Unchecked the "Debug Executable" within that earlier Info tab on the scheme
Cleaned my project and build folder (Command-Shift-K and Command-Alt-Shift-K respectively)
Rebuilt and ran the project
Here is what it would look like on my configuration if I needed to do the same thing.
Once you are able to reproduce the crash (hopefully you can reproduce with logs), try your usual debugging methods to see where it is crashing. Play a sound when something executes, comment out lines, etc.
I unfortunately can't know your exact crash, though this method above helped me reproduce an issue 90% of our users were having and I wasn't, simply because I was building on debug before.
I have a Swift Application, when app is run, sometimes app is crashed. I have received log report about Crash App from Crashlytics but I don't understand log report.
Please help me: How to read and understand report from Crashlytics in order to find line code is error.
My report from Crashlytics:
**Crashed: com.apple.main-thread**
**EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000001**
Thread : Crashed: com.apple.main-thread
0 libGPUSupportMercury.dylib 6691807120 gpus_ReturnNotPermittedKillClient + 12
1 libGPUSupportMercury.dylib 6691811136 gpusSubmitDataBuffers + 172
2 GLEngine 6603264500 gliPresentViewES_Exec + 196
3 GLEngine 6603264248 gliPresentViewES + 84
4 OpenGLES 6603324504 -[EAGLContext presentRenderbuffer:] + 72
5 SpriteKit 6615201312 -[SKView renderContent] + 228
6 SpriteKit 6615188728 __29-[SKView setUpRenderCallback]_block_invoke + 64
7 SpriteKit 6615369448 -[SKDisplayLink _callbackForNextFrame:] + 272
8 QuartzCore 6610051640 CA::Display::DisplayLinkItem::dispatch() + 32
9 QuartzCore 6610051280 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 324
10 IOKit 6557291632 IODispatchCalloutFromCFMessage + 376
11 CoreFoundation 6538358212 __CFMachPortPerform + 180
12 CoreFoundation 6538443348 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 56
13 CoreFoundation 6538443188 __CFRunLoopDoSource1 + 436
14 CoreFoundation 6538434868 __CFRunLoopRun + 1640
15 CoreFoundation 6537564884 CFRunLoopRunSpecific + 396
16 GraphicsServices 6699431676 GSEventRunModal + 168
17 UIKit 6617247552 UIApplicationMain + 1488
18 NiftyCat 4296456952 main (AppDelegate.swift:11)
19 libdyld.dylib 6844000776 start + 4
Thanks.
You'll need to Symbolicate your Build to understand your Crash.
To do this in Crashlytics: you must add a "New Run Script Phase". this is the "+" Sign on the Build Phases of your target.
The Script goes like this:
"${PODS_ROOT}/Fabric/run" {YOUR-APP_ID_AT-FABRIC}
If you Installed Fabric using PODS.
Hope this helps ;-)
Cheers
For example, I get this error in debug area:
2014-05-01 05:01:28.052 MyApp[93187:303] *** setObjectForKey: object cannot be nil (key: -1)
2014-05-01 05:01:28.057 MyApp[93187:303] (
0 CoreFoundation 0x00007fff8cb3f25c __exceptionPreprocess + 172
1 libobjc.A.dylib 0x00007fff89202e75 objc_exception_throw + 43
2 CoreFoundation 0x00007fff8ca3a46e -[__NSDictionaryM setObject:forKey:] + 1102
3 MyApp 0x0000000100009725 +[SystemTools getData:] + 5509
4 MyApp 0x0000000100001c4b -[AppDelegate drawCanvas:] + 1467
5 MyApp 0x0000000100001675 -[AppDelegate repeatingTimer:] + 85
6 Foundation 0x00007fff8ec480f4 __NSFireTimer + 96
7 CoreFoundation 0x00007fff8caa6564 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
8 CoreFoundation 0x00007fff8caa609f __CFRunLoopDoTimer + 1151
9 CoreFoundation 0x00007fff8cb175aa __CFRunLoopDoTimers + 298
10 CoreFoundation 0x00007fff8ca618e5 __CFRunLoopRun + 1525
11 CoreFoundation 0x00007fff8ca610b5 CFRunLoopRunSpecific + 309
12 HIToolbox 0x00007fff875dca0d RunCurrentEventLoopInMode + 226
13 HIToolbox 0x00007fff875dc7b7 ReceiveNextEventCommon + 479
14 HIToolbox 0x00007fff875dc5bc _BlockUntilNextEventMatchingListInModeWithFilter + 65
15 AppKit 0x00007fff907853de _DPSNextEvent + 1434
16 AppKit 0x00007fff90784a2b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
17 AppKit 0x00007fff90778b2c -[NSApplication run] + 553
18 AppKit 0x00007fff90763913 NSApplicationMain + 940
19 MyApp 0x0000000100016aa2 main + 34
20 libdyld.dylib 0x00007fff9440b5fd start + 1
21 ??? 0x0000000000000003 0x0 + 3
)
Unfortunately, I have saveral "setObject:forKey:" calls in "SystemTools getData:" function.
How can I determine to which call this error is related? What that numbers (after plus) means?
Add an Execption breakpoint in your break points. This will halt at the line of code which is causing the app to crash. That way you dont have to debug with NSLogs.
The default behavior of Xcode is to stop where the exception is
caught, not where the exception is raised!
To explain those lines in the crash logs:
From Ray Wenderlich's blog:
2 XYZLib 0x34648e88 0x83000 + 8740
It is basically four columns:
The frame number – in this case, 2.
The name of the binary – in this case, XYZLib.
The address of the function that was called – in this case, 0x34648e88.
The fourth column is divided into two sub-columns, a base address and an offset. Here it is 0×83000 + 8740, where the first number points to the file, and the second points to the line of code in that file.
Use breakpoints in all of your setObject:forKey calls. Use NSLog for print some useful information in log. You are a developer so you need to know debugging also.
The first line of the output is useful here:
setObjectForKey: object cannot be nil (key: -1)
The NSDictionary doesn't like nil values, so look for a place in your getData method that could be assigning a nil value to a key of "-1".
Good luck!
I'm getting quite a few errors which appear to be related to WebKit in my iOS project. To give some background, we use WebViews in our application for displaying news stories. These news stories often include links and when the user clicks on the links, we usually bring the user to Safari to read a full news article. Pretty standard stuff. Anyways, here's what the crash looks like:
0 libobjc.A.dylib 0x31198f78 objc_msgSend + 15
1 CoreFoundation 0x313567e4 __invoking___ + 68
2 CoreFoundation 0x312b17b1 -[NSInvocation invoke] + 160
3 CoreFoundation 0x312b13cf -[NSInvocation invokeWithTarget:] + 50
4 WebKit 0x3395fe0d -[_WebSafeForwarder forwardInvocation:] + 252
5 CoreFoundation 0x31355a83 ___forwarding___ + 666
6 CoreFoundation 0x312b0650 _CF_forwarding_prep_0 + 48
7 CoreFoundation 0x313567e4 __invoking___ + 68
8 CoreFoundation 0x312b17b1 -[NSInvocation invoke] + 160
9 WebCore 0x31a851f5 _ZL11SendMessageP12NSInvocation + 24
10 WebCore 0x31a986f1 _ZL20HandleDelegateSourcePv + 80
11 CoreFoundation 0x31327ad3 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
12 CoreFoundation 0x3132729f __CFRunLoopDoSources0 + 214
13 CoreFoundation 0x31326045 __CFRunLoopRun + 652
14 CoreFoundation 0x312a94a5 CFRunLoopRunSpecific + 300
15 CoreFoundation 0x312a936d CFRunLoopRunInMode + 104
16 GraphicsServices 0x32782439 GSEventRunModal + 136
17 UIKit 0x315aecd5 UIApplicationMain + 1080
18 MyApp 0x23e7 main (main.m:13)
In terms of narrowing this crash down, it only appears to happen on iOS 5.x on iPad.
FWIW, in some areas of our codebase we're using WebViewDelegates and intercepting some of the user clicks on the links in the news stories. Not sure whether this could be a contributing factor, but thought it worthwhile to mention.
Any ideas on what might be causing a crash at this section of code?
Thanks,
Sean
I'm getting the following stack trace from an iPad crash pulled from the device. This was pulled from a user's iPad and I don't know what they were doing when it crashed. How would I get more info on why/where the app is crashing and fix it?
Uncaught C++ Exception
Stack trace:
0 - 0 MyApp 0x00005ac1 _Z16TerminateHandlerv + 24
1 - 1 libstdc++.6.dylib 0x33814e3d _ZN10__cxxabiv111__terminateEPFvvE + 52
2 - 2 libstdc++.6.dylib 0x33814e91 _ZSt9terminatev + 16
3 - 3 libstdc++.6.dylib 0x33814f61 __cxa_throw + 84
4 - 4 libobjc.A.dylib 0x3441dc8b objc_exception_throw + 70
5 - 5 Foundation 0x3645192b __NSThreadPerformPerform + 654
6 - 6 CoreFoundation 0x34e16a79 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 12
7 - 7 CoreFoundation 0x34e1875f __CFRunLoopDoSources0 + 382
8 - 8 CoreFoundation 0x34e194eb __CFRunLoopRun + 230
9 - 9 CoreFoundation 0x34da9ec3 CFRunLoopRunSpecific + 230
10 - 10 CoreFoundation 0x34da9dcb CFRunLoopRunInMode + 58
11 - 11 GraphicsServices 0x339d041f GSEventRunModal + 114
12 - 12 GraphicsServices 0x339d04cb GSEventRun + 62
13 - 13 UIKit 0x33a07d69 -[UIApplication _run] + 404
14 - 14 UIKit 0x33a05807 UIApplicationMain + 670
15 - 15 MyApp 0x000036af main + 70
16 - 16 MyApp 0x00003664 start + 40
Two things you might try:
Somtimes apps crash and the debugger stops on a completely different method. Enable "guard malloc" in the xcode run settings (under schemes in xcode4), run the app in the debugger utill it crashes, and see if that shows you which method is to blame.
If not, your best bet is to run the app in the debugger and make the crash happen. Try everything, simulate memory warnings everywhere, use every feature of the app, try every possible combination of paths through the app. Asking the user what they think they were doing might narrow it down some.