aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--weaver/src/org/aspectj/weaver/bcel/BcelWorld.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelWorld.java b/weaver/src/org/aspectj/weaver/bcel/BcelWorld.java
index 4d6d73b33..dade0bbe6 100644
--- a/weaver/src/org/aspectj/weaver/bcel/BcelWorld.java
+++ b/weaver/src/org/aspectj/weaver/bcel/BcelWorld.java
@@ -390,18 +390,22 @@ public class BcelWorld extends World implements Repository {
}
}
+ ClassPathManager.ClassFile file = null;
try {
- ClassPathManager.ClassFile file = classPath.find(UnresolvedType.forName(name));
+ file = classPath.find(UnresolvedType.forName(name));
if (file == null)
return null;
ClassParser parser = new ClassParser(file.getInputStream(), file.getPath());
JavaClass jc = parser.parse();
- file.close();
return jc;
} catch (IOException ioe) {
return null;
+ } finally {
+ if (file != null) {
+ file.close();
+ }
}
}