]> git.mxchange.org Git - flightgear.git/blobdiff - src/Airports/xmlloader.cxx
Merge branch 'next' into durk-atc
[flightgear.git] / src / Airports / xmlloader.cxx
index 9487144c99817ed42361776b9d4c495d19c368c7..3d65f7756611241764dab8025d71da53682c44d1 100644 (file)
@@ -14,8 +14,8 @@
 //
 
 #include <simgear/misc/sg_path.hxx>
-
 #include <simgear/xml/easyxml.hxx>
+#include <simgear/misc/strutils.hxx>
 
 #include <Main/globals.hxx>
 #include <Main/fg_props.hxx>
@@ -84,11 +84,16 @@ void XMLLoader::load(FGSidStar* p) {
 bool XMLLoader::findAirportData(const std::string& aICAO, 
     const std::string& aFileName, SGPath& aPath)
 {
+  string fileName(aFileName);
+  if (!simgear::strutils::ends_with(aFileName, ".xml")) {
+    fileName.append(".xml");
+  }
+  
   string_list sc = globals->get_fg_scenery();
   char buffer[128];
-  ::snprintf(buffer, 128, "%c/%c/%c/%s.%s.xml", 
+  ::snprintf(buffer, 128, "%c/%c/%c/%s.%s", 
     aICAO[0], aICAO[1], aICAO[2], 
-    aICAO.c_str(), aFileName.c_str());
+    aICAO.c_str(), fileName.c_str());
 
   for (string_list_iterator it = sc.begin(); it != sc.end(); ++it) {
     SGPath path(*it);