From 797571ad236ad3a73ea5756aecc940d452f9b781 Mon Sep 17 00:00:00 2001 From: "nboyd%atg.com" Date: Tue, 12 Feb 2002 14:29:30 +0000 Subject: [PATCH] Fix 124900 --- js/rhino/src/org/mozilla/javascript/Arguments.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/js/rhino/src/org/mozilla/javascript/Arguments.java b/js/rhino/src/org/mozilla/javascript/Arguments.java index 81a12fc81a4e..61a2f4d763a7 100644 --- a/js/rhino/src/org/mozilla/javascript/Arguments.java +++ b/js/rhino/src/org/mozilla/javascript/Arguments.java @@ -90,8 +90,19 @@ class Arguments extends ScriptableObject { public Object get(int index, Scriptable start) { if (0 <= index && index < args.length) { NativeFunction f = activation.funObj; - if (index < f.argCount) + if (index < f.argCount) { + String argName = f.argNames[index]; + for (int i=index+1; i < f.argNames.length; i++) { + if (argName.equals(f.argNames[i])) { + // duplicate parameter name, must use initial + // parameter value + Object[] orig = activation.getOriginalArguments(); + return index < orig.length ? orig[index] + : Undefined.instance; + } + } return activation.get(f.argNames[index], activation); + } return args[index]; } return super.get(index, start);