I think there's a small problem with Igor's changes.  The modifed Interpreter.java
seems to create unnecessary activation objects for InterpretedScripts.  You can
see this in the debugger (local variables are present even for top level scripts).
I believe the attached change will fix the problem.

Regards,

Chris
This commit is contained in:
nboyd%atg.com 2002-04-08 15:54:57 +00:00
Родитель 03a1eb7075
Коммит a81c4b5ada
1 изменённых файлов: 10 добавлений и 10 удалений

Просмотреть файл

@ -1498,20 +1498,20 @@ public class Interpreter extends LabelTable {
}else if (!theData.itsUseDynamicScope) {
scope = fnOrScript.getParentScope();
}
}else {
if (theData.itsCheckThis) {
thisObj = ScriptRuntime.getThis(thisObj);
}
if (theData.itsNeedsActivation) {
scope = ScriptRuntime.initVarObj(cx, scope, fnOrScript,
thisObj, args);
}
} else {
scope = ScriptRuntime.initScript(cx, scope, fnOrScript, thisObj,
theData.itsFromEvalCode);
}
if (theData.itsCheckThis) {
thisObj = ScriptRuntime.getThis(thisObj);
}
if (theData.itsNeedsActivation) {
scope = ScriptRuntime.initVarObj(cx, scope, fnOrScript,
thisObj, args);
}
DebugFrame frame = null;
if (cx.debugger != null) {
frame = cx.debugger.enterFrame(cx, scope, thisObj, args,