fixed bug 452
[org.ibex.core.git] / src / org / ibex / Ibex.java
index ba80775..bd337f1 100644 (file)
@@ -335,7 +335,8 @@ public final class Ibex extends JS.Cloneable {
         public JSScope getStatic() {
             try {
                 // FIXME background?
-                if (t == null) t = Template.buildTemplate(parentkey + ".ixt", Stream.getInputStream(parent.get(parentkey + ".ixt")), ibex);
+                if (t == null)
+                    t = Template.buildTemplate(parentkey + ".t", Stream.getInputStream(parent.get(parentkey + ".t")), ibex);
                 return t.staticScope;
             } catch (Exception e) {
                 Log.error(this, e);
@@ -344,9 +345,9 @@ public final class Ibex extends JS.Cloneable {
         }
         public Object call(Object a, Object b, Object c, Object[] rest, int nargs) throws JSExn {
             // GROSS hack
-            if (nargs == 9999) return t;
-            if (nargs != 1) throw new JSExn("FIXME can only call with one arg");
+            if (nargs != 1 && nargs != 9999) throw new JSExn("FIXME can only call with one arg");
             getStatic();
+            if (t == null) throw new JSExn("No such template " + parentkey);
             t.apply((Box)a);
             return a;
         }