b.putAndTriggerTraps(b.get(JSU.S("numchildren")), kid);
}
- if (script != null) JSU.cloneWithNewGlobalScope(script, pis).call(callempty);
+ if (script != null) JSU.cloneWithNewGlobalScope(script, pis).call(null, callempty);
for(int i=0; keys != null && i < keys.length; i++) {
if (keys[i] == null) continue;
public TemplateHelper(String sourceName, JS s, Ibex ibex) throws XML.Exn, IOException, JSExn {
this.sourceName = sourceName;
this.ibex = ibex;
- InputStream is = s.getInputStream();
+ InputStream is = JSU.getInputStream(s);
Ibex.Blessing b = Ibex.Blessing.getBlessing(s).parent;
while(b != null) {
if(b.parentkey != null) initial_uri = JSU.toString(b.parentkey) + (initial_uri.equals("") ? "" : "." + initial_uri);
JS staticScript = parseScript(static_content, static_content_start);
t.staticObject = new JS.Obj();
JS staticScope = new PerInstantiationScope(null, ibex, null, t.staticObject);
- if (staticScript != null) JSU.cloneWithNewGlobalScope(staticScript, staticScope).call(callempty);
+ if (staticScript != null) JSU.cloneWithNewGlobalScope(staticScript, staticScope).call(null, callempty);
}
private JS parseScript(StringBuffer content, int content_start) throws IOException {
// FIXME: This is all wrong
if (!("ibex://ui".equals(c.getUri()) && "box".equals(c.getLocalName()))) {
- String tagname = (c.getUri().equals("") ? "" : (c.getUri() + ".")) + c.getLocalName();
+ String tagname = (c.getUri() == null || "".equals(c.getUri()) ? "" :
+ (c.getUri() + ".")) + c.getLocalName();
// GROSS hack
try {
// GROSSER hack
}
// treat value starting with '.' as resource reference
- String uri = a.getUri(i); if (!uri.equals("")) uri = '.' + uri;
+ String uri = a.getUri(i); if (uri != null && !uri.equals("")) uri = '.' + uri;
keys.add(a.getKey(i));
vals.add((a.getVal(i).startsWith(".") ? uri : "") + a.getVal(i));
}
// sort the attributes lexicographically
Basket.Array.sort(keys, vals, new Basket.CompareFunc() {
public int compare(Object a, Object b) { return ((String)a).compareTo((String)b); }
- }, 0, keys.size());
+ }, 0, keys.size() - 1);
t.keys = new JS[keys.size()];
t.vals = new JS[vals.size()];