diff --git a/mozilla/js/rhino/src/org/mozilla/javascript/optimizer/Optimizer.java b/mozilla/js/rhino/src/org/mozilla/javascript/optimizer/Optimizer.java index d08eb40f027..f4392e747fe 100644 --- a/mozilla/js/rhino/src/org/mozilla/javascript/optimizer/Optimizer.java +++ b/mozilla/js/rhino/src/org/mozilla/javascript/optimizer/Optimizer.java @@ -676,11 +676,12 @@ public class Optimizer { } int indexType = rewriteForNumberVariables(arrayIndex); if (indexType == TypeEvent.NumberType) { - // setting the ISNUMBER_PROP signals the codegen - // to use the scriptRuntime.getElem that takes - // a double index - n.putIntProp(Node.ISNUMBER_PROP, Node.RIGHT); - markDCPNumberContext(arrayIndex); + if (!convertParameter(arrayIndex)) { + // setting the ISNUMBER_PROP signals the codegen + // to use the scriptRuntime.getElem that takes + // a double index + n.putIntProp(Node.ISNUMBER_PROP, Node.RIGHT); + } } return TypeEvent.NoType; }