- Template.buildTemplate(zis, name.substring(0, name.length() - 4).replace('/', '.'));
- bytes.put(name.replace('/', '.'), new byte[] { }); // placeholder so resolveResource() works properly
+ // placeholder so resolveResource() works properly
+ bytes.put(name.replace('/', '.'), new byte[] { });
+ name = name.substring(0, name.length() - 4);
+
+ String packageName = JSObject.nodeNameToPackageName(name.replace('/', '.'));
+ Object user = usedPackages.get(packageName);
+ if (user != null && user != thisArchive) {
+ if (Log.on) Log.log(Resources.class, "templates have already been loaded into " + packageName + "; refusing to load " + name);
+ } else {
+ usedPackages.put(packageName, thisArchive);
+ Static.createStatic(name.replace('/', '.'), false);
+ Template.buildTemplate(zis, name.replace('/', '.'));
+ }
+