MKMapView error with EXC_BAD_ACCESS

I have the following line of code that activates a breakpoint

[mapView addAnnotations:grabinstance.itemArray]; 

This crash is random. grabinstance.itemArray is always full and never changes at that time due to the fact that this bit of code is called only after the array is full. At this particular time, it was confirmed as 323 elements in the array.

NSZombieEnabled also finds nothing.

The reverse is shown below, and line 1154 is the line above.

 #0 0x0126a372 in _insert () #1 0x0126a312 in _splitNode () #2 0x0126a3b7 in _insert () #3 0x011db253 in -[MKAnnotationContainerView addAnnotation:] () #4 0x011dfc2e in -[MKAnnotationContainerView addAnnotations:] () #5 0x011b0b30 in -[MKMapView addAnnotations:] () #6 0x00009257 in -[BigViewController plotItems] (self=0x614de90, _cmd=0x16464f) at /Users/zzzz/Documents/iPhone Projects/BigProject/Classes/BigViewController.m:1154 #7 0x005336c1 in _nsnote_callback () #8 0x01c18f99 in __CFXNotificationPost_old () #9 0x01b9833a in _CFXNotificationPostNotification () #10 0x00529266 in -[NSNotificationCenter postNotificationName:object:userInfo:] () #11 0x00024071 in -[ItemGrabber parserDidEndDocument:] (self=0x617b540, _cmd=0x689aa3, parser=0xf6b4ab0) at /Users/zzzz/Documents/iPhone Projects/BigProject/Classes/ItemGrabber.m:267 
+6
iphone annotations mkmapview exc-bad-access
source share
3 answers

Bug reported by Apple and confirmed

+4
source share

You should check your annotations using CLLocationCoordinate2DIsValid () :

 if (CLLocationCoordinate2DIsValid(place.coordinate)) { [_mapView addAnnotation:place]; } else { NSLog(@"place %@ has invalid coordinates", place.name); } 
+9
source share

I also had the same problem and I fixed it. The problem was in my locations. The objects in the array may not contain valid locations. These may be garbage values.

+1
source share

All Articles