diff options
-rw-r--r-- | src/jvm/clojure/lang/Compiler.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java index df477037..877c20a1 100644 --- a/src/jvm/clojure/lang/Compiler.java +++ b/src/jvm/clojure/lang/Compiler.java @@ -2617,15 +2617,17 @@ private static Symbol tagOf(Object o){ } public static Object loadFile(String file) throws Exception{ + FileInputStream f = new FileInputStream(file); try { Var.pushThreadBindings(RT.map(SOURCE_PATH, file, SOURCE, (new File(file)).getName())); - return load(new FileInputStream(file)); + return load(f); } finally { Var.popThreadBindings(); + f.close(); } } |