diff --git a/mozilla/js/rhino/org/mozilla/javascript/NodeTransformer.java b/mozilla/js/rhino/org/mozilla/javascript/NodeTransformer.java index 3cb3c622141..e1380222d3b 100644 --- a/mozilla/js/rhino/org/mozilla/javascript/NodeTransformer.java +++ b/mozilla/js/rhino/org/mozilla/javascript/NodeTransformer.java @@ -510,10 +510,13 @@ public class NodeTransformer { if (nodeType == TokenStream.FUNCTION) { // In a function with both "var x" and "function x", // disregard the var statement, independent of order. - vars.removeLocal(node.getString()); + String functionName = node.getString(); + if (functionName == null) + continue; + vars.removeLocal(functionName); if (ht == null) ht = new Hashtable(); - ht.put(node.getString(), Boolean.TRUE); + ht.put(functionName, Boolean.TRUE); } if (nodeType != TokenStream.VAR) continue; diff --git a/mozilla/js/rhino/src/org/mozilla/javascript/NodeTransformer.java b/mozilla/js/rhino/src/org/mozilla/javascript/NodeTransformer.java index 3cb3c622141..e1380222d3b 100644 --- a/mozilla/js/rhino/src/org/mozilla/javascript/NodeTransformer.java +++ b/mozilla/js/rhino/src/org/mozilla/javascript/NodeTransformer.java @@ -510,10 +510,13 @@ public class NodeTransformer { if (nodeType == TokenStream.FUNCTION) { // In a function with both "var x" and "function x", // disregard the var statement, independent of order. - vars.removeLocal(node.getString()); + String functionName = node.getString(); + if (functionName == null) + continue; + vars.removeLocal(functionName); if (ht == null) ht = new Hashtable(); - ht.put(node.getString(), Boolean.TRUE); + ht.put(functionName, Boolean.TRUE); } if (nodeType != TokenStream.VAR) continue;