Some user's of our iPad application are reporting a crash on launch of the application. Though I have the same device (and the same OS version 4.2.1) I am unable to replicate the crash on my device. I managed to get this crash log from ITC but unsure if this is related to the crash on launch issue.
Please help me analyze this crash log. Thanks in advance.
Incident Identifier: 0D92B20E-8859-4DB4-9DE0-70222FACBAEB
Hardware Model: iPad1,1
Process: MyiPadApp [479]
Path: /var/mobile/Applications/3BA6269C-7616-41ED-A1BF-1D23CA81CFA1/MyiPadApp.app/MyiPadApp
Identifier: MyiPadApp
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2011-01-13 18:40:44.967 +0100
OS Version: iPhone OS 4.2.1 (8C148)
Report Version: 104
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x782e6d6f
Crashed Thread: 0
Thread 0 Crashed:
0 libobjc.A.dylib 0x34a80466 objc_msgSend + 18
1 UIKit 0x3424847e -[UIViewController unloadViewForced:]
2 UIKit 0x342483ca -[UIViewController unloadViewIfReloadable]
3 UIKit 0x342e1dde -[UIViewController purgeMemoryForReason:]
4 UIKit 0x342e1dfe -[UIViewController didReceiveMemoryWarning]
5 MyiPadApp 0x00002886 -[MajorIndicesController didReceiveMemoryWarning] + 22
6 UIKit 0x342e1e14 -[UIViewController _didReceiveMemoryWarning:]
7 Foundation 0x3117561c _nsnote_callback
8 CoreFoundation 0x3580111c __CFXNotificationPost_old
9 CoreFoundation 0x35800dbc _CFXNotificationPostNotification
10 Foundation 0x31164d1c -[NSNotificationCenter postNotificationName:object:userInfo:]
11 Foundation 0x3116e23a -[NSNotificationCenter postNotificationName:object:]
12 UIKit 0x342aada2 -[UIApplication _performMemoryWarning]
13 UIKit 0x342ab9c4 -[UIApplication _receivedMemoryNotification]
14 UIKit 0x342a8770 _memoryStatusChanged
15 CoreFoundation 0x358310c6 __CFNotificationCenterDarwinCallBack
16 CoreFoundation 0x35817be0 __CFMachPortPerform
17 CoreFoundation 0x3580f6f8 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__
18 CoreFoundation 0x3580f6bc __CFRunLoopDoSource1
19 CoreFoundation 0x35801f76 __CFRunLoopRun
20 CoreFoundation 0x35801c80 CFRunLoopRunSpecific
21 CoreFoundation 0x35801b88 CFRunLoopRunInMode
22 GraphicsServices 0x320c84a4 GSEventRunModal
23 GraphicsServices 0x320c8550 GSEventRun
24 UIKit 0x341dc322 -[UIApplication _run]
25 UIKit 0x341d9e8c UIApplicationMain
26 MyiPadApp 0x0000218a main + 42
27 MyiPadApp 0x00002154 start + 32
Thread 1:
0 libSystem.B.dylib 0x30d30974 kevent + 24
1 libSystem.B.dylib 0x30dda704 _dispatch_mgr_invoke
2 libSystem.B.dylib 0x30dda174 _dispatch_queue_invoke
3 libSystem.B.dylib 0x30dd9b98 _dispatch_worker_thread2
4 libSystem.B.dylib 0x30d7e24a _pthread_wqthread
5 libSystem.B.dylib 0x30d76970 start_wqthread + 0
Thread 2:
0 libSystem.B.dylib 0x30d04268 mach_msg_trap + 20
1 libSystem.B.dylib 0x30d06354 mach_msg
2 CoreFoundation 0x35802648 __CFRunLoopServiceMachPort
3 CoreFoundation 0x35801ed2 __CFRunLoopRun
4 CoreFoundation 0x35801c80 CFRunLoopRunSpecific
5 CoreFoundation 0x35801b88 CFRunLoopRunInMode
6 WebCore 0x34bf6124 RunWebThread
7 libSystem.B.dylib 0x30d7d886 _pthread_start
8 libSystem.B.dylib 0x30d72a88 thread_start + 0
Thread 3:
0 libSystem.B.dylib 0x30d04268 mach_msg_trap + 20
1 libSystem.B.dylib 0x30d06354 mach_msg
2 CoreFoundation 0x35802648 __CFRunLoopServiceMachPort
3 CoreFoundation 0x35801ed2 __CFRunLoopRun
4 CoreFoundation 0x35801c80 CFRunLoopRunSpecific
5 CoreFoundation 0x35811efe CFRunLoopRun
6 MyiPadApp 0x00017c84 +[ASIHTTPRequest runRequests] + 120
7 Foundation 0x3116c192 -[NSThread main]
8 Foundation 0x31165242 __NSThread__main__
9 libSystem.B.dylib 0x30d7d886 _pthread_start
10 libSystem.B.dylib 0x30d72a88 thread_start + 0
Thread 4:
0 libSystem.B.dylib 0x30d04268 mach_msg_trap + 20
1 libSystem.B.dylib 0x30d06354 mach_msg
2 CoreFoundation 0x35802648 __CFRunLoopServiceMachPort
3 CoreFoundation 0x35801ed2 __CFRunLoopRun
4 CoreFoundation 0x35801c80 CFRunLoopRunSpecific
5 CoreFoundation 0x35801b88 CFRunLoopRunInMode
6 Foundation 0x3118e5f6 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:]
7 Foundation 0x3116c192 -[NSThread main]
8 Foundation 0x31165242 __NSThread__main__
9 libSystem.B.dylib 0x30d7d886 _pthread_start
10 libSystem.B.dylib 0x30d72a88 thread_start + 0
Thread 5:
0 libSystem.B.dylib 0x30d2868c select$DARWIN_EXTSN + 20
1 CoreFoundation 0x35839662 __CFSocketManager
2 libSystem.B.dylib 0x30d7d886 _pthread_start
3 libSystem.B.dylib 0x30d72a88 thread_start + 0
Thread 6:
0 libSystem.B.dylib 0x30d7e9e0 __workq_kernreturn + 8
1 libSystem.B.dylib 0x30d7e364 _pthread_wqthread
2 libSystem.B.dylib 0x30d76970 start_wqthread + 0
Thread 7:
0 libSystem.B.dylib 0x30d7e9e0 __workq_kernreturn + 8
1 libSystem.B.dylib 0x30d7e364 _pthread_wqthread
2 libSystem.B.dylib 0x30d76970 start_wqthread + 0
Thread 0 crashed with ARM Thread State:
r0: 0x00198930 r1: 0x344b6ce1 r2: 0x001bec59 r3: 0x000000a0
r4: 0x0019a3f2 r5: 0x782e6d6f r6: 0x344bec7c r7: 0x2fdfea54
r8: 0x00000000 r9: 0x001fc098 r10: 0x00000003 r11: 0x00000029
ip: 0x3e3cf960 sp: 0x2fdfea3c lr: 0x00002999 pc: 0x34a80466
cpsr: 0x200f0030
Binary Images:
0x1000 - 0x36fff +MyiPadApp armv7 <ddf465b3fdd191b2fcb6cfb0e5be2d68> /var/mobile/Applications/3BA6269C-7616-41ED-A1BF-1D23CA81CFA1/MyiPadApp.app/MyiPadApp
0xf6000 - 0xf7fff dns.so armv7 <fcefecb2d5e095ba88127eec3af57ec0> /usr/lib/info/dns.so
0x2fe00000 - 0x2fe27fff dyld armv7 <06e6959cebb4a72e66c833e26ae64d26> /usr/lib/dyld
0x3001f000 - 0x30026fff libbz2.1.0.dylib armv7 <2989ea7a5cad2cfe91bd632b041d0ff4> /usr/lib/libbz2.1.0.dylib
0x30054000 - 0x3016afff libicucore.A.dylib armv7 <e7fbb2ac586567e574dc33d7bb5c4dc9> /usr/lib/libicucore.A.dylib
0x302b7000 - 0x30366fff WebKit armv7 <644a1c6120578f896bed7121307aa2af> /System/Library/PrivateFrameworks/WebKit.framework/WebKit
0x303fc000 - 0x3051cfff CoreGraphics armv7 <2d7b40a7baca915ce78b1dd9a0d6433b> /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics
0x3056b000 - 0x3056bfff vecLib armv7 <e53d234e808c77d286161095f92c58cf> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/vecLib
0x30641000 - 0x30700fff CFNetwork armv7 <02fe0e30e54fffdcbbbd02e8cb812c3a> /System/Library/Frameworks/CFNetwork.framework/CFNetwork
0x3076f000 - 0x307c4fff libvDSP.dylib armv7 <9365fc6cae1bff737257e74faf3b1f26> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libvDSP.dylib
0x307e6000 - 0x307e8fff libgcc_s.1.dylib armv7 <e66758bcda6da5d7f9b54fa5c4de6da2> /usr/lib/libgcc_s.1.dylib
0x30821000 - 0x30853fff AppSupport armv7 <47c8055ac99f187174ca373b702ffa68> /System/Library/PrivateFrameworks/AppSupport.framework/AppSupport
0x30854000 - 0x30854fff Accelerate armv7 <29dd5f17440bbb6e8e42e11b6fceda9a> /System/Library/Frameworks/Accelerate.framework/Accelerate
0x3091c000 - 0x30931fff libresolv.9.dylib armv7 <ea156820997ae9a2baf664d0f79f18d7> /usr/lib/libresolv.9.dylib
0x30b44000 - 0x30b46fff IOMobileFramebuffer armv7 <1040629f37795146c9dcac8ab1a868fc> /System/Library/PrivateFrameworks/IOMobileFramebuffer.framework/IOMobileFramebuffer
0x30c45000 - 0x30c74fff SystemConfiguration armv7 <3f982c11b5526fc39a92d585c60d8a90> /System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration
0x30d03000 - 0x30e14fff libSystem.B.dylib armv7 <138a43ab528bb428651e6aa7a2a7293c> /usr/lib/libSystem.B.dylib
0x30e37000 - 0x30f1ffff libGLProgrammability.dylib armv7 <1f478a71783cd7eb4ae9ef6f2dcea803> /System/Library/Frameworks/OpenGLES.framework/libGLProgrammability.dylib
0x30f20000 - 0x30f2bfff libz.1.dylib armv7 <fabaddbcbc8c02bab0261df9d78e0e25> /usr/lib/libz.1.dylib
0x31066000 - 0x31114fff QuartzCore armv7 <83a8e5f0033369e437069c1e758fed83> /System/Library/Frameworks/QuartzCore.framework/QuartzCore
0x31161000 - 0x31280fff Foundation armv7 <81d36041f04318cb51db5aafed9ce504> /System/Library/Frameworks/Foundation.framework/Foundation
0x31307000 - 0x31347fff CoreAudio armv7 <f32e03ee4c68f0db23f05afc9a3cc94c> /System/Library/Frameworks/CoreAudio.framework/CoreAudio
0x318b5000 - 0x318d5fff PrintKit armv7 <02a9c6f4173a0673c4637a3b570345cd> /System/Library/PrivateFrameworks/PrintKit.framework/PrintKit
0x31bd9000 - 0x31c02fff MobileCoreServices armv7 <54484a513761868149405df7fc29b5c0> /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices
0x31c6d000 - 0x31d16fff libxml2.2.dylib armv7 <b3d82f80a777cb1434052ea2d232e3df> /usr/lib/libxml2.2.dylib
0x31d29000 - 0x31d2cfff IOSurface armv7 <deff02882166bf16d0765d68f0542cc8> /System/Library/PrivateFrameworks/IOSurface.framework/IOSurface
0x31d2d000 - 0x31d2ffff MobileInstallation armv7 <8e6b0d9f642be06729ffdaaee97053b0> /System/Library/PrivateFrameworks/MobileInstallation.framework/MobileInstallation
0x31d46000 - 0x31d4dfff AggregateDictionary armv7 <71372c95d4af7af787d0682a939e40ac> /System/Library/PrivateFrameworks/AggregateDictionary.framework/AggregateDictionary
0x31e09000 - 0x31e4bfff CoreTelephony armv7 <96d3af505b9f2887e62c7e99c157733e> /System/Library/Frameworks/CoreTelephony.framework/CoreTelephony
0x31e4c000 - 0x31f6cfff libmecabra.dylib armv7 <b2293b8acb00a14bace7520a63f39439> /usr/lib/libmecabra.dylib
0x320c4000 - 0x320d0fff GraphicsServices armv7 <0099670dccd99466653956bf918d667a> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
0x32100000 - 0x33a79fff TextInput armv7 <557601a7d93124fd5860606f294e900a> /System/Library/PrivateFrameworks/TextInput.framework/TextInput
0x33ae9000 - 0x33aebfff libAccessibility.dylib armv7 <3f0b58ea13d30f0cdb73f6ffe6d4e75c> /usr/lib/libAccessibility.dylib
0x33b49000 - 0x33c82fff AudioToolbox armv7 <657b327f2ceee9f22f9474f2f9bddbe6> /System/Library/Frameworks/AudioToolbox.framework/AudioToolbox
0x33d2c000 - 0x33d2ffff libGFXShared.dylib armv7 <3a385ed495379116abbe50bc8cd5a612> /System/Library/Frameworks/OpenGLES.framework/libGFXShared.dylib
0x33d30000 - 0x33d31fff CoreSurface armv7 <f7caaf43609cfe0e475dfe83790edb4d> /System/Library/PrivateFrameworks/CoreSurface.framework/CoreSurface
0x33d61000 - 0x33d7afff libRIP.A.dylib armv7 <ee16b5cee12a8947c8e511ed51ae7fef> /System/Library/Frameworks/CoreGraphics.framework/Resources/libRIP.A.dylib
0x340dc000 - 0x34112fff CoreText armv7 <b9b5c21b2d2a28abc47842c78c026ddf> /System/Library/Frameworks/CoreText.framework/CoreText
0x3415c000 - 0x3418ffff AddressBook armv7 <7c87e0175c8649d6832419da8a1cfac1> /System/Library/Frameworks/AddressBook.framework/AddressBook
0x341a5000 - 0x34526fff UIKit armv7 <de1cbd3219a74e4d41b30428f428e223> /System/Library/Frameworks/UIKit.framework/UIKit
0x34527000 - 0x345bafff ImageIO armv7 <5b5a294d4250eff866fdbf891b1e8b34> /System/Library/Frameworks/ImageIO.framework/ImageIO
0x34632000 - 0x34636fff AssetsLibraryServices armv7 <e861a330d14702f148ca5133dcbe954c> /System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices
0x34775000 - 0x34822fff JavaScriptCore armv7 <3f2df600942dc72aad312b3cc98ec479> /System/Library/PrivateFrameworks/JavaScriptCore.framework/JavaScriptCore
0x34852000 - 0x3485bfff CoreVideo armv7 <2092d5deb6b234e04678b7c1878ccd81> /System/Library/Frameworks/CoreVideo.framework/CoreVideo
0x3492e000 - 0x3493afff SpringBoardServices armv7 <137b75e19b2450c234dec88d538798ff> /System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices
0x3493d000 - 0x34987fff libstdc++.6.dylib armv7 <53a6e7239c3908fa8c2915b65ff3b056> /usr/lib/libstdc++.6.dylib
0x34a7d000 - 0x34b3efff libobjc.A.dylib armv7 <aaf5671a35f9ac20d5846703dafaf4c6> /usr/lib/libobjc.A.dylib
0x34b3f000 - 0x35127fff WebCore armv7 <d6bd9cf88ee82ab6b0e33e0ae1190772> /System/Library/PrivateFrameworks/WebCore.framework/WebCore
0x3520f000 - 0x352fcfff libiconv.2.dylib armv7 <c72b45f471df092dbd849081f7a3ef53> /usr/lib/libiconv.2.dylib
0x353e7000 - 0x353ecfff MobileKeyBag armv7 <cec3f3271fc267c32c169ed03e312d63> /System/Library/PrivateFrameworks/MobileKeyBag.framework/MobileKeyBag
0x3549d000 - 0x354d5fff libCGFreetype.A.dylib armv7 <374bd566263e8929c10d50d6a6a48a46> /System/Library/Frameworks/CoreGraphics.framework/Resources/libCGFreetype.A.dylib
0x35553000 - 0x35560fff OpenGLES armv7 <a12565ffb5bb42e3019f1957cd4951d0> /System/Library/Frameworks/OpenGLES.framework/OpenGLES
0x355b6000 - 0x355bcfff liblockdown.dylib armv7 <5bbd9b3f5cfece328f80c403a8805ce9> /usr/lib/liblockdown.dylib
0x356d2000 - 0x357d9fff CoreData armv7 <29b1ab7d339e42a6ff6923e54cf43e7b> /System/Library/Frameworks/CoreData.framework/CoreData
0x357da000 - 0x358c0fff CoreFoundation armv7 <01441e01f5141a50ee723362e59ca400> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
0x35992000 - 0x3599ffff libbsm.0.dylib armv7 <0f4e595e6eb2170aceb729f32b5de8c2> /usr/lib/libbsm.0.dylib
0x35b60000 - 0x35babfff libBLAS.dylib armv7 <251c5ac7380802a16e30d827c027c637> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libBLAS.dylib
0x35bac000 - 0x35e46fff libLAPACK.dylib armv7 <2e77d87e96af938aacf0a6008e6fb89d> /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/libLAPACK.dylib
0x3601b000 - 0x3603afff Bom armv7 <0f5fd6057bad5e1677869500d636821f> /System/Library/PrivateFrameworks/Bom.framework/Bom
0x3603d000 - 0x360acfff ProofReader armv7 <d2e62a8ab7e1460c7f6de8913c703e6d> /System/Library/PrivateFrameworks/ProofReader.framework/ProofReader
0x3612f000 - 0x36137fff libkxld.dylib armv7 <854e82fe66feef01e54c7c8a209851ac> /usr/lib/system/libkxld.dylib
0x36138000 - 0x3616ffff Security armv7 <cd28e102950634ae7167ddee9c686d36> /System/Library/Frameworks/Security.framework/Security
0x36170000 - 0x361bdfff libsqlite3.dylib armv7 <55038e5c1d4d0dbdd94295e8cad7a9a4> /usr/lib/libsqlite3.dylib
0x361be000 - 0x361f8fff IOKit armv7 <eb932cc42d60e55d9a4d0691bcc3d9ad> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x3623f000 - 0x3627efff libGLImage.dylib armv7 <a7c117c92607a512823d307b8fdd0151> /System/Library/Frameworks/OpenGLES.framework/libGLImage.dylib
Looks like your app is receiving a memory warning as soon as it starts up. When you receive a memory warning, you're suppose to unload as much stuff from memory as you can, e.g. stuff you can reload from elsewhere (database, storage, etc).
Does your app pre-load a bunch of stuff when it starts up?
Also, you could have a memory leak which is only present under certain circumstances (e.g. the user has loaded the app before, done something and then that kicks off something when it starts up in the future). You could ask your users if they ever managed to load the app at all.
Have you tried running the static analyser on your code? (CMD-Shift-A)
And have you tried running your app under Instruments to watch for memory leaks?
Your application is indeed getting a memory warning, but the reason of the crash seems to be that you are trying to access bad memory (for example, trying to access an object that's been released earlier) while trying to free up memory in response to the memory warning. In other words, the memory warning seems to be the indirect cause of your crash.
Brindy is right. The question is, are you loading any assets or data into memory on launch? If so, I'd suggest to postpone this until the application is up and running.
More importantly, however, is to check what your application does when it receives a memory warning. Memory warnings are nothing to be afraid of. You just have to make sure that you handle them correctly.
User contributions licensed under CC BY-SA 3.0