SIGSEGV SEGV_ACCERR Crash Reports - What to do? SIGSEGV SEGV_ACCERR Crash Reports - What to do? ios ios

SIGSEGV SEGV_ACCERR Crash Reports - What to do?


You need to symbolicate this crash report. Number 7 is the line you will be interested in, but there is no symbol information so the crash report cannot be translated into something useful for you. In order to symbolicate you need the exact code that was used in your app store release. If you have that, then you can reference this answer:

https://stackoverflow.com/a/13280585/1155387

As for the other things:

1) Don't be so quick to assume an internal API bug. Your function obviously changes the background color of a view, which calls various methods internally. It probably got passed an invalid value somehow. Don't be so naive as to think the code you write is the only code ever executed.

2) The + signs indicate the offset of that code inside of the binary object. Not useful for you.

3) You can easily have a memory error with ARC, because ARC only deals with the scope of Objective-C. Any CoreFoundation objects, etc, will not be managed. That's not necessarily what happens here but ARC doesn't mean you have to stop thinking about memory all together.

4) See above

5) See above


I would be willing to be you did something like this:

CALayer *layer = [CALayer layer];layer.delegate = self;

And then your object "self" got deallocated before the last ref to the CALayer was dropped. A delegate property does not hold a ref to the object you set as the layer.delegate value. This has nothing to do with ARC (ARC does not magically fix all pointer use in your app).

So, first thing to do is look at the code where you set a CALayer delegate and make sure to set this delegate ref back to nil when your "self" object gets deallocated. That will break the association of the CALayer and your object. In general your should upload your dsym to Crittercism, but it will not matter much in this case.