1

I have an app which apple has rejected because it crashed for them, I can't seem to pin point where the crash is actually happening to further debug (nor can I replicate the crash so far).

Using https://developer.apple.com/library/archive/technotes/tn2151/_index.html and How to symbolicate crash report from Apple received in .txt format not .crash format I was able to partly symbolicate the crash report they sent me which gave me the line:

0 App 0x000000010461ad04 closure #2 in closure #1 in ViewController.getLocations(lat:lng:) + 470276 (ViewController.swift:0)

On looking over the method ViewController.getLocations I can't see anything that could possibly be causing a crash but I'm a little confused by the + 470276 what does this mean?

The full backtrace:

Thread 0 Crashed:
0   App                 0x000000010461ad04 closure #2 in closure #1 in ViewController.getTolls(lat:lng:) + 470276 (ViewController.swift:0)
1   App                 0x00000001045cae70 thunk for @escaping @callee_guaranteed () -> () + 142960 (MyVehiclesViewController.swift:0)
2   libdispatch.dylib               0x00000001836ecaa0 0x1836eb000 + 6816
3   libdispatch.dylib               0x00000001836eca60 0x1836eb000 + 6752
4   libdispatch.dylib               0x00000001836f965c 0x1836eb000 + 58972
5   CoreFoundation                  0x0000000183da3070 0x183cb5000 + 974960
6   CoreFoundation                  0x0000000183da0bc8 0x183cb5000 + 965576
7   CoreFoundation                  0x0000000183cc0da8 0x183cb5000 + 48552
8   GraphicsServices                0x0000000185ca6020 0x185c9b000 + 45088
9   UIKit                           0x000000018dce0758 0x18d9c3000 + 3266392
10  App                 0x00000001045ae924 main + 26916 (BaseViewController.swift:24)
11  libdyld.dylib                   0x0000000183751fc0 0x183751000 + 4032
DevWithZachary
  • 3,545
  • 11
  • 49
  • 101

1 Answers1

1

It looks to me like there is a call to an escaping closure in MyVehiclesViewController that is not being fulfilled somehow. Also the "+ 47276" in the backtrace is the offset for the memory address that you are given. A full symbolication should give line numbers instead.

For the stack overflow on how to fully symbolicate, this one is pretty good.

Pasosta
  • 825
  • 3
  • 13
  • 22