UnityAds Crashes at beginning - ios

my app crashes when i using UnityAds with no internet connection. it happens when my first scene try to start. but when i use internet connection, my game start correctly.
using unity 2017.3.1f1 and Xcode 9.3.
it crashes at:
2018-04-25 15:23:49.269307+0430 name[1664:419120] I/UnityAds:
-[UADSInitializeStateConfig execute] (line:139) :: Unity Ads init: load configuration from
https://config.unityads.unity3d.com/webview/2.1.0/release/config.json
and the log is:
ballz`::Job_ExecuteUnityWebRequest():
0x1015ee814 <+0>: stp x20, x19, [sp, #-0x20]!
0x1015ee818 <+4>: stp x29, x30, [sp, #0x10]
0x1015ee81c <+8>: add x29, sp, #0x10 ; =0x10
0x1015ee820 <+12>: sub sp, sp, #0x10 ; =0x10
0x1015ee824 <+16>: mov x19, x0
0x1015ee828 <+20>: add x0, x19, #0x118 ; =0x118
0x1015ee82c <+24>: str x0, [sp, #0x8]
0x1015ee830 <+28>: bl 0x1010ef3a4 ; ::Lock() at Mutex.cpp:60
0x1015ee834 <+32>: ldr x8, [x19, #0x108]
0x1015ee838 <+36>: sub x9, x8, #0x1 ; =0x1
0x1015ee83c <+40>: ldr x8, [x19, #0xf0]
0x1015ee840 <+44>: ldr x8, [x8, x9, lsl #3]
0x1015ee844 <+48>: str x9, [x19, #0x108]
0x1015ee848 <+52>: cbz x8, 0x1015ee870 ; <+92> [inlined] ~AutoLock at UnityWebRequestProto.h:216
0x1015ee84c <+56>: mov x0, x19
0x1015ee850 <+60>: blr x8
--> 0x1015ee854 <+64>: ldr x8, [x19, #0x108]
0x1015ee858 <+68>: cbnz x8, 0x1015ee838 ; <+36> [inlined] back + 4 at UnityWebRequestProto.h:204
0x1015ee85c <+72>: add x0, sp, #0x8 ; =0x8
0x1015ee860 <+76>: bl 0x100cd4f10 ; ::~AutoLock() at Mutex.h:30
0x1015ee864 <+80>: mov x0, x19
0x1015ee868 <+84>: bl 0x1015ef158 ; ::Release() at UnityWebRequestProto.h:353
0x1015ee86c <+88>: b 0x1015ee878 ; <+100> at UnityWebRequestProto.h:219
0x1015ee870 <+92>: add x0, sp, #0x8 ; =0x8
0x1015ee874 <+96>: bl 0x100cd4f10 ; ::~AutoLock() at Mutex.h:30
0x1015ee878 <+100>: sub sp, x29, #0x10 ; =0x10
0x1015ee87c <+104>: ldp x29, x30, [sp, #0x10]
0x1015ee880 <+108>: ldp x20, x19, [sp], #0x20
0x1015ee884 <+112>: ret
0x1015ee888 <+116>: mov x19, x0
0x1015ee88c <+120>: add x0, sp, #0x8 ; =0x8
0x1015ee890 <+124>: bl 0x100cd4f10 ; ::~AutoLock() at Mutex.h:30
0x1015ee894 <+128>: mov x0, x19
0x1015ee898 <+132>: bl 0x101b7e2bc ; symbol stub for: _Unwind_Resume

You could try and only initialize the unity ads when you are connected to internet.
if(Application.internetReachability != NetworkReachability.NotReachable)
{
//initialize ads here
}

Related

iOS - App freezes when push from navigation controller

I encountered this strange bug: sometimes when I push a view controller(VC1 -> VC2), the app gets frozen(It doesn't crash, just freeze). There is no blocking main thread. And when I check the View Hierarchy, the VC2 is actually under a "UIParallaxDimmingView". Also, the viewDidLoad, viewDidAppear are called.
How I present VC2:
VC *vc2 = [[VC alloc]initWithStyle:UITableViewStyleGrouped];
[self.navigationController pushViewController:vc2 animated:YES];
So the problem is the VC2 is loaded but does not appear on screen. Here is the screen shot of the view hierarchy, the highlighted blue view is the UIParallaxDimmingView, and it's blocking all my VC2 contents, and the VC1 is actually under VC2...
and here is my stack trace
0x10016b8dc <+0>: sub sp, sp, #0x40 ; =0x40
0x10016b8e0 <+4>: stp x29, x30, [sp, #0x30]
0x10016b8e4 <+8>: add x29, sp, #0x30 ; =0x30
0x10016b8e8 <+12>: stur wzr, [x29, #-0x4]
0x10016b8ec <+16>: stur w0, [x29, #-0x8]
0x10016b8f0 <+20>: stur x1, [x29, #-0x10]
0x10016b8f4 <+24>: bl 0x1004105a4 ; symbol stub for: objc_autoreleasePoolPush
0x10016b8f8 <+28>: adrp x1, 1044
0x10016b8fc <+32>: add x1, x1, #0x888 ; =0x888
0x10016b900 <+36>: adrp x30, 1057
0x10016b904 <+40>: add x30, x30, #0xd70 ; =0xd70
0x10016b908 <+44>: ldur w8, [x29, #-0x8]
0x10016b90c <+48>: ldur x9, [x29, #-0x10]
0x10016b910 <+52>: ldr x30, [x30]
0x10016b914 <+56>: ldr x1, [x1]
0x10016b918 <+60>: str x0, [sp, #0x18]
0x10016b91c <+64>: mov x0, x30
0x10016b920 <+68>: str w8, [sp, #0x14]
0x10016b924 <+72>: str x9, [sp, #0x8]
0x10016b928 <+76>: bl 0x1004106c4 ; symbol stub for: objc_msgSend
0x10016b92c <+80>: bl 0x10040fc20 ; symbol stub for: NSStringFromClass
0x10016b930 <+84>: mov x29, x29
0x10016b934 <+88>: bl 0x100410718 ; symbol stub for: objc_retainAutoreleasedReturnValue
0x10016b938 <+92>: mov x9, #0x0
0x10016b93c <+96>: ldr w8, [sp, #0x14]
0x10016b940 <+100>: str x0, [sp]
0x10016b944 <+104>: mov x0, x8
0x10016b948 <+108>: ldr x1, [sp, #0x8]
0x10016b94c <+112>: mov x2, x9
0x10016b950 <+116>: ldr x3, [sp]
0x10016b954 <+120>: bl 0x10040fd28 ; symbol stub for: UIApplicationMain
0x10016b958 <+124>: stur w0, [x29, #-0x4]
0x10016b95c <+128>: ldr x1, [sp]
0x10016b960 <+132>: mov x0, x1
0x10016b964 <+136>: bl 0x1004106e8 ; symbol stub for: objc_release
0x10016b968 <+140>: ldr x0, [sp, #0x18]
0x10016b96c <+144>: bl 0x100410598 ; symbol stub for: objc_autoreleasePoolPop
0x10016b970 <+148>: ldur w0, [x29, #-0x4]
0x10016b974 <+152>: ldp x29, x30, [sp, #0x30]
0x10016b978 <+156>: add sp, sp, #0x40 ; =0x40
0x10016b97c <+160>: ret`
I managed to find a solution here
So my interactivePopGestureRecognizer is enabled even when the current visible view controller is the only VC on the navigation stack. Simply disable that will solve the bug.
SWIFT 3
func navigationController(_ navigationController: UINavigationController, didShow viewController: UIViewController, animated: Bool) {
if (navigationController.viewControllers.count > 1)
{
self.navigationController?.interactivePopGestureRecognizer?.delegate = self
navigationController.interactivePopGestureRecognizer?.isEnabled = true;
}
else
{
self.navigationController?.interactivePopGestureRecognizer?.delegate = nil
navigationController.interactivePopGestureRecognizer?.isEnabled = false;
}
}

xcode8.1:invalid mode 'kCFRunLoopCommonModes' provided to CFRunLoopRunSpecific - break on _CFRunLoopError_RunCalledWithInvalidMode to debug

I write the code below:
JSImgDeleteCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:displayCellID forIndexPath:indexPath];
and before use it,I registered it:
[_displayImgCollectionView registerNib:[UINib nibWithNibName:displayCellID bundle:nil] forCellWithReuseIdentifier:displayCellID];
it is allright in xcode7.3,
but when I run this in xcode8.1,there is sth wrong,the msg like this:
invalid mode 'kCFRunLoopCommonModes' provided to CFRunLoopRunSpecific - break on _CFRunLoopError_RunCalledWithInvalidMode to debug. This message will only appear once per execution.
libsystem_c.dylib`__abort:
0x18ce163ec <+0>: adrp x8, 150192
0x18ce163f0 <+4>: add x8, x8, #0 ; =0
0x18ce163f4 <+8>: ldr x9, [x8, #8]
0x18ce163f8 <+12>: cbnz x9, 0x18ce16408 ; <+28>
0x18ce163fc <+16>: adrp x9, 27
0x18ce16400 <+20>: add x9, x9, #1393 ; =1393
0x18ce16404 <+24>: str x9, [x8, #8]
0x18ce16408 <+28>: stp x20, x19, [sp, #-32]!
0x18ce1640c <+32>: stp x29, x30, [sp, #16]
0x18ce16410 <+36>: add x29, sp, #16 ; =16
0x18ce16414 <+40>: sub sp, sp, #32 ; =32
0x18ce16418 <+44>: add x8, sp, #16 ; =16
0x18ce1641c <+48>: add x19, x8, #8 ; =8
0x18ce16420 <+52>: movn w20, #0
0x18ce16424 <+56>: stp xzr, x20, [sp, #16]
0x18ce16428 <+60>: orr w0, wzr, #0x6
0x18ce1642c <+64>: add x1, sp, #16 ; =16
0x18ce16430 <+68>: movz x2, #0
0x18ce16434 <+72>: bl 0x18cdc552c ; sigaction
0x18ce16438 <+76>: ldr w8, [sp, #24]
0x18ce1643c <+80>: and w8, w8, #0xffffffdf
0x18ce16440 <+84>: str w8, [sp, #24]
0x18ce16444 <+88>: str w20, [sp, #12]
0x18ce16448 <+92>: orr w0, wzr, #0x3
0x18ce1644c <+96>: add x1, sp, #12 ; =12
0x18ce16450 <+100>: movz x2, #0
0x18ce16454 <+104>: bl 0x18ce2b814 ; symbol stub for: __printf_arginfo_n
0x18ce16458 <+108>: orr w0, wzr, #0x1
0x18ce1645c <+112>: bl 0x18cf6a470 ; __pthread_workqueue_setkill
0x18ce16460 <+116>: orr w0, wzr, #0x3
0x18ce16464 <+120>: mov x1, x19
0x18ce16468 <+124>: movz x2, #0
0x18ce1646c <+128>: bl 0x18cf6885c ; pthread_sigmask
0x18ce16470 <+132>: bl 0x18cf6d908 ; pthread_self
0x18ce16474 <+136>: orr w1, wzr, #0x6
0x18ce16478 <+140>: bl 0x18cf6a3e0 ; pthread_kill
0x18ce1647c <+144>: movz w0, #0x2710
0x18ce16480 <+148>: bl 0x18cdf2b1c ; usleep$NOCANCEL
0x18ce16484 <+152>: orr w8, wzr, #0xffffffe7
0x18ce16488 <+156>: str w8, [sp, #24]
0x18ce1648c <+160>: orr w0, wzr, #0x3
0x18ce16490 <+164>: mov x1, x19
0x18ce16494 <+168>: movz x2, #0
0x18ce16498 <+172>: bl 0x18ce2b814 ; symbol stub for: __printf_arginfo_n
-> 0x18ce1649c <+176>: brk #0x1
please help!
I had faced the same issue
CFRunLoopRunSpecific - break on _CFRunLoopError_RunCalledWithInvalidMode to debug. This message will only appear once per execution.
But I found this is not the real reason behind crashing the app, the real reason i found below the above message as Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull length]:unrecognized selector sent to instance 0x102ed2fb0' on console
is real reason.
So, I handle the null value which i received from backend.
In my case, I accidentally added two reference to the same Xib constraint. Removed one and it works well.
sorry,it's just the index lost and Apple changed the error log,just add the .m file

Core Data custom accessor crash when saving context with nil required attribute

After reading this excellent article about custom accessors in Swift, I refactored from NSDecimalNumber to use the new Decimal type. I have a fairly complex model and things have been working fine for several days, but I now see an EXC_BAD_ACCESS crash if I save the managed object context while a required (non-optional) property is nil, baseAmount in my case. When using NSDecimalNumber directly, before the refactor, saving the object would fail, but it wouldn't crash.
Not sure if this is important, but I'm saving the context using Magical Record's function: NSManagedObjectContext.mr_default().mr_saveToPersistentStoreAndWait()
Any ideas on how I can modify the baseAmount accessors to achieve the same failed-save behavior that Core Data provides so that it doesn't crash?
Here is the relevant part of my NSManagedObject subclass, followed by the stack trace:
extension DFTransaction {
#NSManaged private var primitiveBaseAmount: NSDecimalNumber
var baseAmount: Decimal {
get {
willAccessValue(forKey: "baseAmount")
defer { didAccessValue(forKey: "baseAmount") }
return primitiveBaseAmount.decimalValue
}
set {
willChangeValue(forKey: "baseAmount")
defer { didChangeValue(forKey: "baseAmount") }
primitiveBaseAmount = NSDecimalNumber(decimal: newValue)
}
}
}
[appname]`#objc DFTransaction.baseAmount.getter:
0x100343cd0 <+0>: stp x29, x30, [sp, #-16]!
0x100343cd4 <+4>: mov x29, sp
0x100343cd8 <+8>: sub sp, sp, #96 ; =96
0x100343cdc <+12>: stur x0, [x29, #-32]
0x100343ce0 <+16>: stur x8, [x29, #-40]
0x100343ce4 <+20>: bl 0x10051ca64 ; symbol stub for: objc_retain
0x100343ce8 <+24>: sub x8, x29, #24 ; =24
0x100343cec <+28>: ldur x30, [x29, #-32]
0x100343cf0 <+32>: str x0, [sp, #48]
0x100343cf4 <+36>: mov x0, x30
0x100343cf8 <+40>: bl 0x100343da4 ; [appname].DFTransaction.baseAmount.getter : __C.Decimal at DFTransaction.swift:64
0x100343cfc <+44>: ldur w9, [x29, #-24]
0x100343d00 <+48>: ldurh w10, [x29, #-20]
0x100343d04 <+52>: ldurh w11, [x29, #-18]
0x100343d08 <+56>: ldurh w12, [x29, #-16]
0x100343d0c <+60>: ldurh w13, [x29, #-14]
0x100343d10 <+64>: ldurh w14, [x29, #-12]
0x100343d14 <+68>: ldurh w15, [x29, #-10]
0x100343d18 <+72>: ldurh w16, [x29, #-8]
0x100343d1c <+76>: ldurh w17, [x29, #-6]
0x100343d20 <+80>: ldur x0, [x29, #-32]
0x100343d24 <+84>: str w9, [sp, #44]
0x100343d28 <+88>: str w10, [sp, #40]
0x100343d2c <+92>: str w11, [sp, #36]
0x100343d30 <+96>: str w12, [sp, #32]
0x100343d34 <+100>: str w13, [sp, #28]
0x100343d38 <+104>: str w14, [sp, #24]
0x100343d3c <+108>: str w15, [sp, #20]
0x100343d40 <+112>: str w16, [sp, #16]
0x100343d44 <+116>: str w17, [sp, #12]
0x100343d48 <+120>: bl 0x10051ca58 ; symbol stub for: objc_release
0x100343d4c <+124>: ldr w9, [sp, #44]
0x100343d50 <+128>: ldur x8, [x29, #-40]
-> 0x100343d54 <+132>: str w9, [x8] //EXC_BAD_ACCESS
0x100343d58 <+136>: ldr w10, [sp, #40]
0x100343d5c <+140>: strh w10, [x8, #4]
0x100343d60 <+144>: ldr w11, [sp, #36]
0x100343d64 <+148>: strh w11, [x8, #6]
0x100343d68 <+152>: ldr w12, [sp, #32]
0x100343d6c <+156>: strh w12, [x8, #8]
0x100343d70 <+160>: ldr w13, [sp, #28]
0x100343d74 <+164>: strh w13, [x8, #10]
0x100343d78 <+168>: ldr w14, [sp, #24]
0x100343d7c <+172>: strh w14, [x8, #12]
0x100343d80 <+176>: ldr w15, [sp, #20]
0x100343d84 <+180>: strh w15, [x8, #14]
0x100343d88 <+184>: ldr w16, [sp, #16]
0x100343d8c <+188>: strh w16, [x8, #16]
0x100343d90 <+192>: ldr w17, [sp, #12]
0x100343d94 <+196>: strh w17, [x8, #18]
0x100343d98 <+200>: mov sp, x29
0x100343d9c <+204>: ldp x29, x30, [sp], #16
0x100343da0 <+208>: ret
In the article I mention that "Primitive accessors are always nullable Objective-C reference types". This is a truth that's not affected by the isOptional setting, as you've been finding with those crashes.
As such, the primitive accessor must be declared like so:
#NSManaged private var primitiveBaseAmount: NSDecimalNumber?
With that out of the way, you've declared the baseAmount accessor to be Decimal (non-optional), so your custom get implementation must do something non-crashy when it encounters a null primitive value, like return primitiveBaseAmount?.decimalValue ?? 0.

What can I deduce from this error log?

I'm using a dodgy 3rd party framework that needed me to do some real work to get it working. In short, they provided two frameworks that cause duplicated symbols linker errors; I had to merge the 2 frameworks using libtool and it was not a fun ride.
It worked a few times, but strangely enough I'm getting crashes now. Here's the crash log:
<Project Name>`__26-[IDTechEMV swipeMSRData:]_block_invoke:
0x100401a40 <+0>: stp x29, x30, [sp, #-16]!
0x100401a44 <+4>: mov x29, sp
0x100401a48 <+8>: sub sp, sp, #48
0x100401a4c <+12>: adrp x8, 372
0x100401a50 <+16>: add x8, x8, #3360
0x100401a54 <+20>: adrp x9, 380
0x100401a58 <+24>: add x9, x9, #1864
0x100401a5c <+28>: stur x0, [x29, #-8]
0x100401a60 <+32>: mov x1, x0
0x100401a64 <+36>: stur x1, [x29, #-16]
0x100401a68 <+40>: ldr x9, [x9]
0x100401a6c <+44>: ldr x1, [x8]
0x100401a70 <+48>: str x0, [sp, #24]
0x100401a74 <+52>: mov x0, x9
0x100401a78 <+56>: bl 0x1004505c8 ; symbol stub for: objc_msgSend
0x100401a7c <+60>: mov x29, x29
0x100401a80 <+64>: bl 0x10045061c ; symbol stub for: objc_retainAutoreleasedReturnValue
0x100401a84 <+68>: adrp x8, 371
0x100401a88 <+72>: add x1, x8, #4056
0x100401a8c <+76>: ldr x1, [x1]
0x100401a90 <+80>: mov x8, x0
0x100401a94 <+84>: str x0, [sp, #16]
0x100401a98 <+88>: mov x0, x8
0x100401a9c <+92>: bl 0x1004505c8 ; symbol stub for: objc_msgSend
0x100401aa0 <+96>: mov x29, x29
0x100401aa4 <+100>: bl 0x10045061c ; symbol stub for: objc_retainAutoreleasedReturnValue
0x100401aa8 <+104>: adrp x8, 379
0x100401aac <+108>: add x1, x8, #1632
0x100401ab0 <+112>: ldr x1, [x1]
0x100401ab4 <+116>: movz w2, #0x5
0x100401ab8 <+120>: str x0, [sp, #8]
0x100401abc <+124>: bl 0x1004505c8 ; symbol stub for: objc_msgSend
0x100401ac0 <+128>: ldr x0, [sp, #8] // Thread 1: signal SIGABRT
0x100401ac4 <+132>: bl 0x1004505ec ; symbol stub for: objc_release
0x100401ac8 <+136>: ldr x0, [sp, #16]
0x100401acc <+140>: bl 0x1004505ec ; symbol stub for: objc_release
0x100401ad0 <+144>: adrp x8, 379
0x100401ad4 <+148>: add x0, x8, #1752
0x100401ad8 <+152>: adrp x8, 694
0x100401adc <+156>: add x1, x8, #3200
0x100401ae0 <+160>: adrp x8, 694
0x100401ae4 <+164>: add x8, x8, #3196
0x100401ae8 <+168>: adrp x9, 694
0x100401aec <+172>: add x9, x9, #3192
0x100401af0 <+176>: adrp x10, 694
0x100401af4 <+180>: add x10, x10, #3188
0x100401af8 <+184>: orr w2, wzr, #0x1
0x100401afc <+188>: adrp x11, 694
0x100401b00 <+192>: add x11, x11, #3187
0x100401b04 <+196>: movz w12, #0
0x100401b08 <+200>: adrp x13, 694
0x100401b0c <+204>: add x13, x13, #3186
0x100401b10 <+208>: adrp x14, 694
0x100401b14 <+212>: add x14, x14, #3185
0x100401b18 <+216>: strb w12, [x14]
0x100401b1c <+220>: strb w12, [x13]
0x100401b20 <+224>: strb w2, [x11]
0x100401b24 <+228>: ldr x11, [sp, #24]
0x100401b28 <+232>: ldr x13, [x11, #32]
0x100401b2c <+236>: ldr s0, [x10]
0x100401b30 <+240>: ldr w2, [x9]
0x100401b34 <+244>: ldrb w12, [x8]
0x100401b38 <+248>: uxtb w3, w12
0x100401b3c <+252>: ldr x4, [x1]
0x100401b40 <+256>: ldr x1, [x0]
0x100401b44 <+260>: mov x0, x13
0x100401b48 <+264>: bl 0x1004505c8 ; symbol stub for: objc_msgSend
0x100401b4c <+268>: mov sp, x29
0x100401b50 <+272>: ldp x29, x30, [sp], #16
0x100401b54 <+276>: ret
The console error reads:
2016-02-17 14:56:14.683 <Project Name>[4038:2623242] -[<Project Name>.BookingDetailViewController emvTransactionMessage:]: unrecognized selector sent to instance 0x15810fc00
2016-02-17 14:56:14.686 <Project Name>[4038:2623242] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[<Project Name>.BookingDetailViewController emvTransactionMessage:]: unrecognized selector sent to instance 0x15810fc00'
*** First throw call stack:
(0x180c39900 0x1802a7f80 0x180c4061c 0x180c3d3e8 0x180b4168c 0x100401ac0 0x10250dbf0 0x10250dbb0 0x102513658 0x180bf0bb0 0x180beea18 0x180b1d680 0x18202c088 0x185994d90 0x10010ad1c 0x1806be8b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
I've tried my usual debugging methods and I'm on the ropes here, so I'm trying to figure out this log. Does the [IDTechEMV swipeMSRData:]_block_invoke suggest that this is crashing in the IDTechEMV method call? Could I conclude that the framework itself is messed up?
From the crash log, your BookingDetailViewController is trying to call function emvTransactionMessage: and it couldn't recognize the function.
This is usually caused by typo when typing the selector. Check your BookingDetailViewController if it is indeed have function emvTransactionMessage: that require a parameter in function call or not.

iOS cordova build throwing bad access exception immediately after launch, majority of the time

Seen similar issues to this on the net, but no solutions. It seems to have cropped up with iOS 8. With NSZombie turned on, I see the error:
[UIViewAnimationState release]: message sent to deallocated instance 0x1701c9d80
Then the stack of memory addresses in the webthread:
CoreFoundation`___forwarding___:
0x18708fdb4 <+0>: stp x26, x25, [sp, #-80]!
0x18708fdb8 <+4>: stp x24, x23, [sp, #16]
0x18708fdbc <+8>: stp x22, x21, [sp, #32]
0x18708fdc0 <+12>: stp x20, x19, [sp, #48]
0x18708fdc4 <+16>: stp x29, x30, [sp, #64]
0x18708fdc8 <+20>: add x29, sp, #64
0x18708fdcc <+24>: sub sp, sp, #32
0x18708fdd0 <+28>: mov x22, x1
0x18708fdd4 <+32>: mov x20, x0
0x18708fdd8 <+36>: ldr x19, [x20]
0x18708fddc <+40>: and x8, x19, #0x7000000000000000
0x18708fde0 <+44>: cmp x19, #0
0x18708fde4 <+48>: ccmp x8, #0, #0, lt
0x18708fde8 <+52>: b.eq 0x18708ffe8 ; <+564>
0x18708fdec <+56>: ldr x21, [x20, #8]
0x18708fdf0 <+60>: mov x0, x19
0x18708fdf4 <+64>: bl 0x1870f2f58 ; symbol stub for: +[NSOrderedSet orderedSetWithOrderedSet:]
0x18708fdf8 <+68>: mov x23, x0
0x18708fdfc <+72>: bl 0x1870f2db4 ; symbol stub for: __destroy_helper_block_167
0x18708fe00 <+76>: mov x24, x0
0x18708fe04 <+80>: adrp x8, 74051
0x18708fe08 <+84>: nop
0x18708fe0c <+88>: ldr x25, [x8, #384]
0x18708fe10 <+92>: mov x0, x23
0x18708fe14 <+96>: mov x1, x25
0x18708fe18 <+100>: bl 0x1870f2dd8 ; symbol stub for: __destroy_helper_block_171
0x18708fe1c <+104>: cbz w0, 0x18708fe58 ; <+164>
0x18708fe20 <+108>: mov x0, x19
0x18708fe24 <+112>: mov x1, x25
0x18708fe28 <+116>: mov x2, x21
0x18708fe2c <+120>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x18708fe30 <+124>: cmp x0, #0
0x18708fe34 <+128>: ccmp x0, x19, #4, ne
0x18708fe38 <+132>: b.eq 0x18708fe58 ; <+164>
0x18708fe3c <+136>: and x8, x0, #0x7000000000000000
0x18708fe40 <+140>: cmp x0, #0
0x18708fe44 <+144>: ccmp x8, #0, #0, lt
0x18708fe48 <+148>: b.eq 0x18708ffe4 ; <+560>
0x18708fe4c <+152>: str x0, [x20]
0x18708fe50 <+156>: movz x20, #0
0x18708fe54 <+160>: b 0x187090024 ; <+624>
0x18708fe58 <+164>: adrp x1, 514
0x18708fe5c <+168>: add x1, x1, #2751
0x18708fe60 <+172>: movz x2, #0xa
0x18708fe64 <+176>: mov x0, x24
0x18708fe68 <+180>: bl 0x1870f3dec ; symbol stub for: __destroy_helper_block_467
0x18708fe6c <+184>: cbz w0, 0x187090044 ; <+656>
0x18708fe70 <+188>: adrp x8, 74051
0x18708fe74 <+192>: nop
0x18708fe78 <+196>: ldr x24, [x8, #328]
0x18708fe7c <+200>: mov x0, x23
0x18708fe80 <+204>: mov x1, x24
0x18708fe84 <+208>: bl 0x1870f2dd8 ; symbol stub for: __destroy_helper_block_171
0x18708fe88 <+212>: tbz w0, #0, 0x187090094 ; <+736>
0x18708fe8c <+216>: mov x0, x19
0x18708fe90 <+220>: mov x1, x24
0x18708fe94 <+224>: mov x2, x21
0x18708fe98 <+228>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x18708fe9c <+232>: mov x24, x0
0x18708fea0 <+236>: cbz x24, 0x1870900e8 ; <+820>
0x18708fea4 <+240>: adrp x8, 74051
0x18708fea8 <+244>: nop
0x18708feac <+248>: ldr x1, [x8, #280]
0x18708feb0 <+252>: mov x0, x24
0x18708feb4 <+256>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x18708feb8 <+260>: mov x23, x0
0x18708febc <+264>: ldr x8, [x23]
0x18708fec0 <+268>: ldrh w8, [x8, #34]
0x18708fec4 <+272>: ubfx x8, x8, #6, #1
0x18708fec8 <+276>: cmp x8, x22
0x18708fecc <+280>: b.eq 0x18708ff18 ; <+356>
0x18708fed0 <+284>: mov x0, x21
0x18708fed4 <+288>: bl 0x1870f2fa0 ; symbol stub for: -[NSMutableOrderedSet setObject:atIndex:]
0x18708fed8 <+292>: ldr x8, [x23]
0x18708fedc <+296>: ldrh w8, [x8, #34]
0x18708fee0 <+300>: adrp x9, 535
0x18708fee4 <+304>: add x9, x9, #4044
0x18708fee8 <+308>: tst w8, #0x40
0x18708feec <+312>: adrp x8, 506
0x18708fef0 <+316>: add x8, x8, #1640
0x18708fef4 <+320>: csel x10, x8, x9, ne
0x18708fef8 <+324>: cmp x22, #0
0x18708fefc <+328>: csel x8, x8, x9, ne
0x18708ff00 <+332>: str x8, [sp, #16]
0x18708ff04 <+336>: stp x0, x10, [sp]
0x18708ff08 <+340>: adrp x1, 74021
0x18708ff0c <+344>: add x1, x1, #3760
0x18708ff10 <+348>: orr w0, wzr, #0x4
0x18708ff14 <+352>: bl 0x187071f88 ; CFLog
0x18708ff18 <+356>: adrp x8, 74051
0x18708ff1c <+360>: ldr x0, [x8, #2360]
0x18708ff20 <+364>: nop
0x18708ff24 <+368>: nop
0x18708ff28 <+372>: ldr x1, [x8, #344]
0x18708ff2c <+376>: mov x2, x24
0x18708ff30 <+380>: mov x3, x20
0x18708ff34 <+384>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x18708ff38 <+388>: mov x21, x0
0x18708ff3c <+392>: mov x0, x19
0x18708ff40 <+396>: bl 0x1870f2f58 ; symbol stub for: +[NSOrderedSet orderedSetWithOrderedSet:]
0x18708ff44 <+400>: adrp x8, 74051
0x18708ff48 <+404>: nop
0x18708ff4c <+408>: ldr x22, [x8, #392]
0x18708ff50 <+412>: mov x1, x22
0x18708ff54 <+416>: bl 0x1870f2dd8 ; symbol stub for: __destroy_helper_block_171
0x18708ff58 <+420>: cbz w0, 0x18708ff70 ; <+444>
0x18708ff5c <+424>: mov x0, x19
0x18708ff60 <+428>: mov x1, x22
0x18708ff64 <+432>: mov x2, x21
0x18708ff68 <+436>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x18708ff6c <+440>: b 0x18708ff8c ; <+472>
0x18708ff70 <+444>: mov x0, x19
0x18708ff74 <+448>: bl 0x1870f2f64 ; symbol stub for: +[NSOrderedSet orderedSetWithSet:copyItems:]
0x18708ff78 <+452>: stp x19, x0, [sp]
0x18708ff7c <+456>: adrp x1, 74021
0x18708ff80 <+460>: add x1, x1, #3792
0x18708ff84 <+464>: orr w0, wzr, #0x4
0x18708ff88 <+468>: bl 0x187071f88 ; CFLog
0x18708ff8c <+472>: adrp x8, 74051
0x18708ff90 <+476>: ldrsw x8, [x8, #3972]
0x18708ff94 <+480>: ldrb w8, [x21, x8]
0x18708ff98 <+484>: cbz w8, 0x18708ffd4 ; <+544>
0x18708ff9c <+488>: ldr x8, [x23]
0x18708ffa0 <+492>: ldrb w9, [x8, #34]
0x18708ffa4 <+496>: tbz w9, #7, 0x18708ffd4 ; <+544>
0x18708ffa8 <+500>: adrp x9, 74051
0x18708ffac <+504>: ldrsw x9, [x9, #3964]
0x18708ffb0 <+508>: ldr x9, [x21, x9]
0x18708ffb4 <+512>: ldr w10, [x8, #28]
0x18708ffb8 <+516>: ldrb w11, [x8, #32]
0x18708ffbc <+520>: add x10, x11, x10
0x18708ffc0 <+524>: ldr x0, [x20, x10]
0x18708ffc4 <+528>: ldr x1, [x9, x10]
0x18708ffc8 <+532>: ldr x8, [x8]
0x18708ffcc <+536>: ldr w2, [x8, #16]
0x18708ffd0 <+540>: bl 0x1870f39fc ; symbol stub for: __NSOrderedSetEnumerate
0x18708ffd4 <+544>: adrp x8, 74051
0x18708ffd8 <+548>: ldrsw x8, [x8, #3960]
0x18708ffdc <+552>: ldr x20, [x21, x8]
0x18708ffe0 <+556>: b 0x187090024 ; <+624>
0x18708ffe4 <+560>: mov x19, x0
0x18708ffe8 <+564>: mov x0, x19
0x18708ffec <+568>: bl 0x18709399c ; getAtomTarget
0x18708fff0 <+572>: mov x21, x0
0x18708fff4 <+576>: str x21, [x20]
0x18708fff8 <+580>: adrp x0, 73983
0x18708fffc <+584>: ldr x0, [x0, #384]
0x187090000 <+588>: orr x3, xzr, #0x400
0x187090004 <+592>: mov x1, x20
0x187090008 <+596>: mov x2, x20
0x18709000c <+600>: movz w4, #0
0x187090010 <+604>: bl 0x187092070 ; __invoking___
0x187090014 <+608>: ldr x8, [x20]
0x187090018 <+612>: cmp x8, x21
0x18709001c <+616>: b.ne 0x187090024 ; <+624>
0x187090020 <+620>: str x19, [x20]
0x187090024 <+624>: mov x0, x20
0x187090028 <+628>: sub sp, x29, #64
0x18709002c <+632>: ldp x29, x30, [sp, #64]
0x187090030 <+636>: ldp x20, x19, [sp, #48]
0x187090034 <+640>: ldp x22, x21, [sp, #32]
0x187090038 <+644>: ldp x24, x23, [sp, #16]
0x18709003c <+648>: ldp x26, x25, [sp], #80
0x187090040 <+652>: ret
0x187090044 <+656>: adrp x8, 74066
0x187090048 <+660>: add x8, x8, #288
0x18709004c <+664>: ldrb w8, [x8]
0x187090050 <+668>: cbz w8, 0x18709006c ; <+696>
0x187090054 <+672>: movz x2, #0
0x187090058 <+676>: movz w0, #0x15
0x18709005c <+680>: mov x1, x19
0x187090060 <+684>: movz x3, #0
0x187090064 <+688>: movz x4, #0
0x187090068 <+692>: bl 0x187045204 ; __CFRecordAllocationEvent
0x18709006c <+696>: add x20, x24, #10
0x187090070 <+700>: mov x0, x21
0x187090074 <+704>: bl 0x1870f2fa0 ; symbol stub for: -[NSMutableOrderedSet setObject:atIndex:]
0x187090078 <+708>: mov x8, x0
0x18709007c <+712>: stp x8, x19, [sp, #8]
0x187090080 <+716>: str x20, [sp]
0x187090084 <+720>: adrp x8, 74020
0x187090088 <+724>: add x8, x8, #3600
0x18709008c <+728>: orr w0, wzr, #0x3
0x187090090 <+732>: b 0x187090174 ; <+960>
0x187090094 <+736>: mov x0, x23
0x187090098 <+740>: bl 0x1870f2dc0 ; symbol stub for: ___CFPreferencesRemoveSuitePreferencesFromAppWithContainer_block_invoke169
0x18709009c <+744>: mov x22, x0
0x1870900a0 <+748>: mov x0, x19
0x1870900a4 <+752>: bl 0x1870f2f64 ; symbol stub for: +[NSOrderedSet orderedSetWithSet:copyItems:]
0x1870900a8 <+756>: mov x20, x0
0x1870900ac <+760>: cbnz x22, 0x1870900d0 ; <+796>
0x1870900b0 <+764>: mov x0, x19
0x1870900b4 <+768>: bl 0x1870f2f64 ; symbol stub for: +[NSOrderedSet orderedSetWithSet:copyItems:]
0x1870900b8 <+772>: mov x8, x0
0x1870900bc <+776>: stp x20, x8, [sp, #8]
0x1870900c0 <+780>: str x19, [sp]
0x1870900c4 <+784>: adrp x8, 74020
0x1870900c8 <+788>: add x8, x8, #3632
0x1870900cc <+792>: b 0x1870900dc ; <+808>
0x1870900d0 <+796>: stp x19, x20, [sp]
0x1870900d4 <+800>: adrp x8, 74020
0x1870900d8 <+804>: add x8, x8, #3664
0x1870900dc <+808>: orr w0, wzr, #0x4
0x1870900e0 <+812>: mov x1, x8
0x1870900e4 <+816>: bl 0x187071f88 ; CFLog
0x1870900e8 <+820>: mov x0, x21
0x1870900ec <+824>: bl 0x1870f2fa0 ; symbol stub for: -[NSMutableOrderedSet setObject:atIndex:]
0x1870900f0 <+828>: mov x20, x0
0x1870900f4 <+832>: bl 0x1870f2fac ; symbol stub for: -[NSMutableOrderedSet setObject:atIndexedSubscript:]
0x1870900f8 <+836>: mov x8, x0
0x1870900fc <+840>: cmp x8, x21
0x187090100 <+844>: b.eq 0x187090120 ; <+876>
0x187090104 <+848>: stp x20, x8, [sp, #8]
0x187090108 <+852>: str x21, [sp]
0x18709010c <+856>: adrp x8, 74020
0x187090110 <+860>: add x8, x8, #3696
0x187090114 <+864>: orr w0, wzr, #0x4
0x187090118 <+868>: mov x1, x8
0x18709011c <+872>: bl 0x187071f88 ; CFLog
0x187090120 <+876>: mov x0, x19
0x187090124 <+880>: bl 0x1870f2f58 ; symbol stub for: +[NSOrderedSet orderedSetWithOrderedSet:]
0x187090128 <+884>: adrp x8, 74049
0x18709012c <+888>: nop
0x187090130 <+892>: ldr x20, [x8, #3456]
0x187090134 <+896>: mov x1, x20
0x187090138 <+900>: bl 0x1870f2dd8 ; symbol stub for: __destroy_helper_block_171
0x18709013c <+904>: mov x8, x0
0x187090140 <+908>: cbz w8, 0x187090158 ; <+932>
0x187090144 <+912>: mov x0, x19
0x187090148 <+916>: mov x1, x20
0x18709014c <+920>: mov x2, x21
0x187090150 <+924>: bl 0x1870f2ec8 ; symbol stub for: -[NSOrderedSet initWithObject:]
0x187090154 <+928>: brk #0x1
0x187090158 <+932>: mov x0, x19
0x18709015c <+936>: bl 0x1870f2f64 ; symbol stub for: +[NSOrderedSet orderedSetWithSet:copyItems:]
0x187090160 <+940>: mov x8, x0
0x187090164 <+944>: stp x19, x8, [sp]
0x187090168 <+948>: adrp x8, 74020
0x18709016c <+952>: add x8, x8, #3728
0x187090170 <+956>: orr w0, wzr, #0x4
0x187090174 <+960>: mov x1, x8
0x187090178 <+964>: bl 0x187071f88 ; CFLog
-> 0x18709017c <+968>: brk #0x1
Sometimes the app will build fine, and I can run it without issue. But other times it just crashes after pressing Run in XCode. I'm using the latest XCode on OS X Yosemite. Building for an iPad mini retina running 8.3
Edit
Stack trace from lldb:
* thread #9: tid = 0x14e8ec, 0x000000018709017c CoreFoundation`___forwarding___ + 968, name = 'WebThread', stop reason = EXC_BREAKPOINT (code=1, subcode=0x18709017c)
* frame #0: 0x000000018709017c CoreFoundation`___forwarding___ + 968
frame #1: 0x0000000186f92ccc CoreFoundation`_CF_forwarding_prep_0 + 92
frame #2: 0x0000000186f69458 CoreFoundation`CFRelease + 524
frame #3: 0x000000018b410b3c QuartzCore`CA::release_objects(X::List<void const*>*) + 32
frame #4: 0x000000018b416b50 QuartzCore`-[CAAnimation dealloc] + 84
frame #5: 0x0000000198551724 libobjc.A.dylib`(anonymous namespace)::AutoreleasePoolPage::pop(void*) + 564
frame #6: 0x0000000186f6d074 CoreFoundation`_CFAutoreleasePoolPop + 28
frame #7: 0x0000000187eacffc Foundation`-[NSAutoreleasePool drain] + 152
frame #8: 0x0000000186acdd80 CFNetwork`AutoAutoreleasePool::~AutoAutoreleasePool() + 36
frame #9: 0x0000000186aa9588 CFNetwork`___ZN27URLConnectionClient_Classic18_withDelegateAsyncEPKcU13block_pointerFvP16_CFURLConnectionPK33CFURLConnectionClientCurrent_VMaxE_block_invoke_2 + 228
frame #10: 0x00000001869cbac8 CFNetwork`RunloopBlockContext::_invoke_block(void const*, void*) + 76
frame #11: 0x0000000186f6ccdc CoreFoundation`CFArrayApplyFunction + 68
frame #12: 0x00000001869cb974 CFNetwork`RunloopBlockContext::perform() + 136
frame #13: 0x00000001869cb828 CFNetwork`MultiplexerSource::perform() + 312
frame #14: 0x00000001869cb654 CFNetwork`MultiplexerSource::_perform(void*) + 68
frame #15: 0x0000000187044240 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
frame #16: 0x00000001870434e4 CoreFoundation`__CFRunLoopDoSources0 + 264
frame #17: 0x0000000187041594 CoreFoundation`__CFRunLoopRun + 712
frame #18: 0x0000000186f6d2d4 CoreFoundation`CFRunLoopRunSpecific + 396
frame #19: 0x0000000195618894 WebCore`RunWebThread(void*) + 468
frame #20: 0x0000000198d6bdc8 libsystem_pthread.dylib`_pthread_body + 164
frame #21: 0x0000000198d6bd24 libsystem_pthread.dylib`_pthread_start + 160

Resources