Question

I have three views that inherit from the UITableViewController class. The first one shows a list of locations, the second one shows a map with an annotation that represent the location of the row selected at the first view, the last one shows information about the location (address, image, ...). Some times when I push the back button into the second view, I get this error message.

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI leftCapWidth]: unrecognized selector sent to instance 0x6b57110'
*** Call stack at first throw:
(
 0   CoreFoundation                      0x02576919 __exceptionPreprocess + 185
 1   libobjc.A.dylib                     0x026c45de objc_exception_throw + 47
 2   CoreFoundation                      0x0257842b -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
 3   CoreFoundation                      0x024e8116 ___forwarding___ + 966
 4   CoreFoundation                      0x024e7cd2 _CF_forwarding_prep_0 + 50
 5   UIKit                               0x003935b9 -[UIImageView(UIImageViewInternal) _shouldDrawImage:] + 35
 6   UIKit                               0x00392f3a -[UIImageView(UIImageViewInternal) _canDrawContent] + 411
 7   UIKit                               0x00308f20 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 955
 8   UIKit                               0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
 9   UIKit                               0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
 10  UIKit                               0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
 11  UIKit                               0x0031119a -[UIScrollView _didMoveFromWindow:toWindow:] + 71
 12  UIKit                               0x00308cfc -[UIView(Internal) _didMoveFromWindow:toWindow:] + 407
 13  UIKit                               0x00307b10 -[UIView(Hierarchy) _postMovedFromSuperview:] + 166
 14  UIKit                               0x00300a34 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 1080
 15  UIKit                               0x002fed87 -[UIView(Hierarchy) addSubview:] + 57
 16  UIKit                               0x0050a829 -[UINavigationTransitionView transition:fromView:toView:] + 551
 17  UIKit                               0x0050a28d -[UINavigationTransitionView transition:toView:] + 56
 18  UIKit                               0x00381329 -[UINavigationController _startDeferredTransitionIfNeeded] + 266
 19  UIKit                               0x00380fc7 -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:] + 386
 20  UIKit                               0x00381141 -[UINavigationController popViewControllerAnimated:] + 57
 21  UIKit                               0x003805b6 -[UINavigationController navigationBar:shouldPopItem:] + 148
 22  UIKit                               0x00327143 -[UINavigationBar _popNavigationItemWithTransition:] + 116
 23  UIKit                               0x0032def3 -[UINavigationBar _handleMouseUpAtPoint:] + 605
 24  UIKit                               0x002f42ff -[UIWindow _sendTouchesForEvent:] + 567
 25  UIKit                               0x002d61ec -[UIApplication sendEvent:] + 447
 26  UIKit                               0x002daac4 _UIApplicationHandleEvent + 7495
 27  GraphicsServices                    0x02ddcafa PurpleEventCallback + 1578
 28  CoreFoundation                      0x02557dc4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
 29  CoreFoundation                      0x024b8737 __CFRunLoopDoSource1 + 215
 30  CoreFoundation                      0x024b59c3 __CFRunLoopRun + 979
 31  CoreFoundation                      0x024b5280 CFRunLoopRunSpecific + 208
 32  CoreFoundation                      0x024b51a1 CFRunLoopRunInMode + 97
 33  GraphicsServices                    0x02ddb2c8 GSEventRunModal + 217
 34  GraphicsServices                    0x02ddb38d GSEventRun + 115
 35  UIKit                               0x002deb58 UIApplicationMain + 1160
 36  TravelGuideTemplate                 0x00002730 main + 102
 37  TravelGuideTemplate                 0x000026c1 start + 53
)
terminate called after throwing an instance of 'NSException'

I do not why I am getting this message. Could someone help me?

Thanks for reading.

Was it helpful?

Solution

I bet 1$ this is a memory management issue. I think your app tries to access an object which was released earlier.

Enable NSZombie and see if this changes the error message:

  1. double click the executable in the executables group
  2. open the second tab, arguments
  3. under Variables to be set in the environment add a variable named NSZombieEnabled, with a value of YES, and enable it by ticking the checkbox in front of it.
  4. Run your program again
  5. ??
  6. profit
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top