From cb03565e33a6f10d9bba4b8f1225e233354ccb42 Mon Sep 17 00:00:00 2001 From: hns Date: Tue, 17 Apr 2007 21:38:20 +0000 Subject: [PATCH] * Set parent scope to shared global for static HopObject functions. Fixes http://helma.org/bugs/show_bug.cgi?id=507 --- src/helma/scripting/rhino/HopObjectCtor.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/helma/scripting/rhino/HopObjectCtor.java b/src/helma/scripting/rhino/HopObjectCtor.java index de482ec2..9bcab7b1 100644 --- a/src/helma/scripting/rhino/HopObjectCtor.java +++ b/src/helma/scripting/rhino/HopObjectCtor.java @@ -118,6 +118,15 @@ public class HopObjectCtor extends FunctionObject { return super.get(name, start); } + public void put(String name, Scriptable start, Object value) { + if (value instanceof Function) { + // reset static function's parent scope, needed because of the way we compile + // prototype code, using the prototype objects as scope + ((Function) value).setParentScope(core.global); + } + super.put(name, start, value); + } + class GetById extends BaseFunction { /**