I think I am missing something obvious somewhere. I have a (CLLocation *)lastqueriedlocation defined in the header as a property and synthesized. I want to updated it in locationManager:didUPdateToLocation:fromLocation:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{ CLLocationDistance dist = [lastQueriedLocation getDistanceFrom:newLocation]; if (dist>1000) { lastQueriedLocation = newLocation; [self reSearch:lastQueriedLocation]; } if ([resultArray count] > 0) { [self findAndDisplayNearestLocation:location]; } }
lastQueriedLocation is alloced and init'd in viewDidLoad.
The issue is that of course lastQueriedLocation = newLocation;
results in an EXC_BAD_ACCESS
. So what is the correct approach to persisting the lastQueriedLocation ?
If it helps make the problem more concrete - reSearch is calling a web service fetching POI within 2km of the location - so I only want to do it when we have moved 1km ... but I still want to keep the accuracy at best so I can highlight the nearest, scroll the map etc.