]> git.mxchange.org Git - flightgear.git/commitdiff
Avoid a crash with out-of-sync airport runway usage and runway definitions.
authorJames Turner <zakalawe@mac.com>
Wed, 19 May 2010 22:25:39 +0000 (23:25 +0100)
committerJames Turner <zakalawe@mac.com>
Wed, 19 May 2010 22:25:39 +0000 (23:25 +0100)
src/Airports/dynamics.cxx

index a323d809c97e4d5abd7b4d63c40db02da914c9fe..f45341e5e8f1fbc1dcb99e9e106f4987f10255e4 100644 (file)
@@ -432,6 +432,12 @@ string FGAirportDynamics::chooseRwyByHeading(stringVec rwys,
     double rwyHeading, headingError;
     string runway;
     for (stringVecIterator i = rwys.begin(); i != rwys.end(); i++) {
+        if (!_ap->hasRunwayWithIdent(*i)) {
+          SG_LOG(SG_ATC, SG_WARN, "chooseRwyByHeading: runway " << *i <<
+            " not found at " << _ap->ident());
+          continue;
+        }
+        
         FGRunway *rwy = _ap->getRunwayByIdent((*i));
         rwyHeading = rwy->headingDeg();
         headingError = fabs(heading - rwyHeading);