rem: try { doc.load(getScriptChrome("config.xml")); } catch (exc) { doc.load(getScriptChrome("default-config.xml")); } 
add: doc.load(configURI.spec); 
context:   this.load = function() {    var doc = document.implementation.createDocument("", "", null);    doc.async = false;    try {        doc.load(getScriptChrome("config.xml"));    } catch (exc) {        doc.load(getScriptChrome("default-config.xml"));    }    var nodes = document.evaluate("/UserScriptConfig/Script", doc, null, 0, null);    this.scripts = [];    for (var node = null; (node = nodes.iterateNext()); ) {      var script = new Script();      for (var i = 0, childNode = null; (childNode = node.childNodes[i]); i++) {        if (childNode.nodeName == "Include") {          script.includes.push(childNode.firstChild.nodeValue);        }        else if (childNode.nodeName == "Exclude") {          script.excludes.push(childNode.firstChild.nodeValue);        }      }      script.filename = node.getAttribute("filename");      script.name = node.getAttribute("name");      script.namespace = node.getAttribute("namespace");      script.description = node.getAttribute("description");      script.enabled = node.getAttribute("enabled") == true.toString();      this.scripts.push(script);    }  }
meta: 9744	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9744/fec534de049cc4effd22b41bf1cfa71367d36fa3/config.js/buggy/src/content/config.js