]> git.mxchange.org Git - flightgear.git/commitdiff
Case-insensitive aircraft names, for the startup arg, so 'C172', 'F16', etc work.
authorjmt <jmt>
Sat, 5 Dec 2009 14:25:31 +0000 (14:25 +0000)
committerTim Moore <timoore@redhat.com>
Mon, 7 Dec 2009 06:00:01 +0000 (07:00 +0100)
src/Main/fg_init.cxx

index 2e8713a17d4285c02e24887246c3b19b43836251..08d45373042c4c19ba1bdf2ca27b180f2665e4d9 100644 (file)
@@ -49,6 +49,8 @@
 #include <simgear/compiler.h>
 
 #include <string>
+#include <boost/algorithm/string/compare.hpp>
+#include <boost/algorithm/string/predicate.hpp>
 
 #include <simgear/constants.h>
 #include <simgear/debug/logstream.hxx>
 #endif
 
 using std::string;
+using namespace boost::algorithm;
 
 class Sound;
 extern const char *default_root;
@@ -557,7 +560,7 @@ static string fgFindAircraftPath( const SGPath &path, const string &aircraft,
             n->setStringValue(path.str().c_str());
             n->setAttribute(SGPropertyNode::USERARCHIVE, true);
 
-            if ( !strcmp(dire->d_name, aircraft.c_str()) ) {
+            if ( boost::equals(dire->d_name, aircraft.c_str(), is_iequal()) ) {
                 result = path.str();
                 break;
             }
@@ -640,7 +643,7 @@ bool fgInitConfig ( int argc, char **argv ) {
             vector<SGPropertyNode_ptr> cache = cache_root->getChildren("aircraft");
             for (unsigned int i = 0; i < cache.size(); i++) {
                 const char *name = cache[i]->getStringValue("file", "");
-                if (aircraft_set == name) {
+                if (boost::equals(aircraft_set, name, is_iequal())) {
                     const char *path = cache[i]->getStringValue("path", "");
                     SGPath xml(path);
                     xml.append(name);