cascade bug infinite loop bug
[org.ibex.core.git] / src / org / ibex / js / Interpreter.java
index 0d2c219..5fac7cb 100644 (file)
@@ -217,8 +217,8 @@ class Interpreter implements ByteCodes, Tokens {
                     throw je("tried to assign \"" + (val==null?"(null)":val.toString()) + "\" to the null key");
 
                 Trap t = null;
-                if (target instanceof JSScope && key.equals("cascade")) {
-                    Trap.TrapScope ts = null;
+                Trap.TrapScope ts = null;
+                if (target instanceof JSScope && key.equals("cascade")) {                    
                     JSScope p = (JSScope)target; // search the scope-path for the trap
                     if (target instanceof Trap.TrapScope) {
                        ts = (Trap.TrapScope)target;
@@ -235,7 +235,7 @@ class Interpreter implements ByteCodes, Tokens {
                         if (t == null) { target = ts.t.trapee; key = ts.t.name; }
                     }
                 }
-                if(t == null) {
+                if(ts == null) {
                     if (target instanceof JSScope) {
                         JSScope p = (JSScope)target; // search the scope-path for the trap
                         t = p.getTrap(key);