]> Dogcows Code - chaz/yoink/blobdiff - src/Moof/Settings.cc
sockets documentation and cleanup
[chaz/yoink] / src / Moof / Settings.cc
index 94845c2b1380962352d6a86e80b034837efb1ad4..584643023892b89c2dec9bf373dcb160f9b3b2a1 100644 (file)
@@ -27,7 +27,14 @@ void Settings::parseArgs(int argc, char* argv[])
 {
        for (int i = 1; i < argc; ++i)
        {
-               mScript.doString(argv[i]);
+               if (mScript.doString(argv[i]) != Script::SUCCESS)
+               {
+                       std::string str;
+                       mScript[-1].get(str);
+                       logWarning << "invalid option: " << argv[i]
+                                          << ": " << str << std::endl;
+                       mScript.clearStack();
+               }
        }
 }
 
@@ -45,7 +52,7 @@ void Settings::loadFromFiles(const std::vector<std::string>& path)
        std::vector<std::string> copy(path);
        std::vector<std::string>::iterator it;
 
-#if defined(_WIN32) || defined(__WIN32__)
+#if defined(_WIN32)
        char* homeDrive = getenv("HOMEDRIVE");
        char* homePath = getenv("HOMEPATH");
        std::string home(homeDrive ? homeDrive : "");
@@ -72,7 +79,7 @@ void Settings::loadFromFiles(const std::vector<std::string>& path)
                        std::string str;
                        mScript[-1].get(str);
                        logWarning(str);
-                       mScript.clear();
+                       mScript.clearStack();
                }
        }
 }
@@ -96,8 +103,5 @@ void Settings::save() const
 }
 
 
-Settings settings;     // global instance
-
-
 } // namepsace Mf
 
This page took 0.018635 seconds and 4 git commands to generate.