1
0
Fork 0

Don't free METAR objects, it makes NoaaMetarGetRequest::onDone crash

This commit is contained in:
Rebecca N. Palmer 2015-04-04 14:32:58 +01:00
parent 14405fe2e3
commit 235693c1c4

View file

@ -346,9 +346,10 @@ void BasicRealWxController::removeMetarAtPath(const string &propPath)
MetarPropertiesList::iterator it = findMetarAtPath( propPath );
if( it != _metarProperties.end() ) {
SG_LOG(SG_ENVIRONMENT, SG_INFO, "removing metar properties at " << propPath);
LiveMetarProperties_ptr p(*it);
_metarProperties.erase(it);
// final ref will drop, and delete the MetarProperties, when we return
LiveMetarProperties_ptr p(*it); // delay deletion until this goes out of scope when we return; no longer needed?
// TODO: this doesn't actually delete it, because doing so invalidates the
// BasicRealWxController::update iterator, causing a crash on Go To Airport
// _metarProperties.erase(it);
} else {
SG_LOG(SG_ENVIRONMENT, SG_WARN, "no metar properties at " << propPath);
}