1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-03-07 14:55:45 +01:00

Death to E4X and stuff.

This commit is contained in:
Kris Maglione
2012-12-16 23:00:58 -08:00
parent d8515c1548
commit 6a87343724
4 changed files with 31 additions and 15 deletions

View File

@@ -1570,6 +1570,8 @@ var DOM = Class("DOM", {
return args.toDOM(doc, namespaces, nodes);
if (args instanceof Ci.nsIDOMNode)
return args;
if ("toJSONXML" in args)
args = args.toJSONXML();
let [name, attr] = args;
@@ -1606,8 +1608,13 @@ var DOM = Class("DOM", {
var args = Array.slice(args, 2);
var vals = parseNamespace(name);
var elem = doc.createElementNS(vals[0] || namespaces[""],
name);
try {
var elem = doc.createElementNS(vals[0] || namespaces[""],
name);
}
catch (e) {
util.dump("FOO", vals[0] || namespaces[""], name);
}
for (var key in attr)
if (!/^xmlns(?:$|:)/.test(key)) {
@@ -1688,7 +1695,7 @@ var DOM = Class("DOM", {
if (args == "")
return "";
if (isinstance(args, ["String", "Number", _, DOM.DOMString]))
if (isinstance(args, ["String", "Number", "Boolean", _, DOM.DOMString]))
return indent +
DOM.escapeHTML(String(args), true);
@@ -1709,6 +1716,15 @@ var DOM = Class("DOM", {
.serializeToString(args)
.replace(/^/m, indent);
if ("toJSONXML" in args)
args = args.toJSONXML();
// Deal with common error case
if (args == null) {
util.reportError(Error("Unexpected null when processing XML."));
return "[NULL]";
}
let [name, attr] = args;
if (isFragment(args)) {