0

I have BugSense in my apps to detect and upload crash reports from users. I am getting the following crash that I am unable to track down. Can someone give me some tips on how I may be able to figure out what is going on here?

NSInternalInconsistencyException

    <NSISEngine: 0x1659edd0>{ Rows: UILayoutContainerView:0x165731d0.Height{id: 78} ==
 960 + 1*0x16593640:UIView-Encapsulated-Layout-Height.marker{id: 83} UILayoutContainerView:0x165731d0.Width{id: 75} == 
640 + 1*0x16593610:UIView-Encapsulated-Layout-Width.marker{id: 80} UINavigationTransitionView:0x165743e0.Height{id: 74} == 
960 + 2*0x165a3480.marker{id: 79} + 1*0x16593640:UIView-Encapsulated-Layout-Height.marker{id: 83} UINavigationTransitionView:0x165743e0.Width{id: 72} == 
640 + 2*0


0   CoreFoundation  <redacted> + 130    
1   libobjc.A.dylib objc_exception_throw + 38   
2   CoreFoundation  <redacted> + 0  
3   Foundation  <redacted> + 220    
4   Foundation  <redacted> + 174    
5   Foundation  <redacted> + 316    
6   UIKit   <redacted> + 200    
7   UIKit   <redacted> + 82 
8   Foundation  <redacted> + 210    
9   UIKit   <redacted> + 298    
10  UIKit   <redacted> + 1414   
11  UIKit   <redacted> + 36 
12  UIKit   <redacted> + 1332   
13  UIKit   <redacted> + 72 
14  UIKit   <redacted> + 728    
15  UIKit   <redacted> + 2614   
16  UIKit   <redacted> + 418    
17  UIKit   <redacted> + 44 
18  UIKit   <redacted> + 184    
19  UIKit   <redacted> + 380    
20  QuartzCore  <redacted> + 142    
21  QuartzCore  <redacted> + 350    
22  QuartzCore  <redacted> + 16 
23  QuartzCore  <redacted> + 230    
24  QuartzCore  <redacted> + 314    
25  UIKit   <redacted> + 8232   
26  CoreFoundation  <redacted> + 14 
27  CoreFoundation  <redacted> + 206    
28  CoreFoundation  <redacted> + 622    
29  CoreFoundation  CFRunLoopRunSpecific + 522  
30  CoreFoundation  CFRunLoopRunInMode + 106    
31  GraphicsServices    GSEventRunModal + 138   
32  UIKit   UIApplicationMain + 1136    
33  Video Games main (main.m:16) + 874715   
34  libdyld.dylib   <redacted> + 2
rmaddy
  • 314,917
  • 42
  • 532
  • 579
Ethan Allen
  • 14,425
  • 24
  • 101
  • 194
  • 1
    Well, it's during a custom container transition animation (UINavigationController, looks like). Apart from that, if you want actual help, you might like to unredact your log. You're worse than the NSA! – matt May 19 '14 at 17:01
  • Also you haven't even shown the entire NSISEngine message at the top in its entirety. I can tell because it ends abruptly and is missing matching closing delimiters. Please copy and paste that message fully. – matt May 19 '14 at 17:06
  • This is from BugSense and it's symbolicated on the device. This is as much info and I'm going to get without turning on any in-depth logging on our release app. – Ethan Allen May 19 '14 at 18:36
  • 1
    Then you're scrod (as they say in Boston). I'm quite sure you should be looking at your custom view controller transition, so perhaps you'd like to post the code for that? Otherwise, there's probably nothing more to say. – matt May 19 '14 at 19:23
  • 2
    You haven't provided any code, and in any case the question was "How can _I_ track down this crash?" If what you've posted is all you know, you can (try to) do it by opening up your source and looking at the code for your UINavigationController's custom transition animation. – matt May 19 '14 at 19:24
  • The issue with providing code is that from this crash report I have no idea WHERE in the code this could be occurring. My app has 100,000+ lines of code with 30+ views/transitions in the Storyboard. The purpose of this question was to see if there was a way to give me direction as to where I should look in my code. – Ethan Allen May 29 '14 at 15:28
  • But you already know what to do. (1) Drop the use of BugSense (which evidently sucks). (2) Exercise your app to perform all transitions, on both 4-inch and 3.5-inch screen (simulator will do, if your app runs in the simulator). You will find it. – matt May 29 '14 at 16:14

2 Answers2

4

According to the Apple's Documentation:

NSInternalInconsistencyException

Name of an exception that occurs when an internal assertion fails and implies an unexpected condition within the called code. Available in OS X v10.0 and later. Declared in NSException.h.

The crash you are facing is might have many reason, we can only specify if you can share some code.

The crash log you mentioned in your question give us some hints as following:

1) It appears to be an issue with a custom transition animation (as other mentioned).

2) As stated in a comment by MaxGabriel:

It sounds like an autolayout issue(Just taking a guess, but I know that when an affine transform is applied it the value of the frame property is undefined. Maybe autolayout is using the frame? To test that theory you could remove the transforms and see if the bug still happens).

3) As stated in an answer by Daniel C

This error can occure when you rename some files outside XCode. To solve it you can just remove the files from your project (Right Click - Delete and "Remove Reference") You re-import the files in your project and everything will be ok !

4) Check this out this link, might it will helps you.

5) From the crash logs it seems to be iPhone4(4/4s) in which crash occurs.

Did this crash occurs in iOS 7 or below? Kindly mentioned it.It will also help us out in finding the causes of crash.

Hopefully this info will help you out.

Community
  • 1
  • 1
Irfan
  • 4,301
  • 6
  • 29
  • 46
2

As others have pointed out in the comments, this appears to be an issue with a custom transition animation. The only other info I can get out of this is that it occurred on a 3.5" Retina screen.

It's a stab in the dark, but could it be that there are constraints that can't be satisfied on a 3.5" screen? You may also want to check that there aren't autoresizing mask constraints (see -[UIView translatesAutoresizingMasksIntoConstraints]) contradicting custom constraints.

To get any more info, you'd have to include more detailed logging or reproduce the crash yourself.

Austin
  • 5,625
  • 1
  • 29
  • 43
  • Thanks for the tips, that may be enough info to go on... how did you determine that it was a 3.5 inch screen causing the issue? – Ethan Allen May 20 '14 at 14:20
  • The height / width constraints of the `UILayoutContainerView` are 960x640, the resolution in pixels of a 3.5" Retina screen. – Austin May 20 '14 at 15:17
  • 1
    Actually this is the best answer. However, it seems more likely that you have it backwards: if the constraints that cannot be resolved are for a 3.5 inch screen, then the crash would be on a 4 inch screen. – matt May 29 '14 at 16:09