JSDOC/Options.js
[gnome.introspection-doc-generator] / JSDOC / Options.js
index 70a94ee..1e0e99b 100644 (file)
@@ -100,7 +100,9 @@ Options = {
         
         // this is most likely to come from the command line..
         if (this.conf) {
-            XObject.extend(this, JSON.parse(File.read(this.conf)));;
+            var conf = this.conf[0] == '/' ? this.conf : this.baseDir + '/' + this.conf;
+        
+            XObject.extend(this, JSON.parse(File.read(conf)));;
         }
         // help ?? -- usage..
        
@@ -112,17 +114,20 @@ Options = {
         }
         // append full path to source directories.
         var _this= this;
-        this.src.forEach(function(v, i) {
-            if (v[0] != '/') {
-                this.src[i] = _this.baseDir + '/' + v;
+        var src = this.src;
+        this.src = [];
+        src.forEach(function(v, i) {
+            if (!v.length || v[0] != '/') {
+                v = _this.baseDir + '/' + v;
             }
-            if (File.isDirectory(this.src[i])) {
+            if (File.isDirectory(v)) {
                 throw {
                     name: "ArgumentError", 
-                    message: "invalid Source Directory : " +  v;
+                    message: "invalid Source Directory : " +  v
                 };
             }
-        }
+            this.src.push(v);
+        });
         
         
         if (!this.template) {
@@ -169,8 +174,8 @@ Options = {
                     message: "Unknown argument: " + args[i] 
                 };
             }
-            var a = arg[i].substring(2);
-            if (typeof(argTypes[arg[i]]) == 'undefined') {
+            var a = args[i].substring(2);
+            if (typeof(this[args[i]]) == 'undefined') {
                 throw {
                     name: "ArgumentError", 
                     message: "Unknown argument: " + args[i] 
@@ -215,7 +220,7 @@ Options = {
     },
     
     
-    function showHelp()
+    showHelp: function()
     {
         print(this.usage);
         for(var i in this) {