aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java_tools
diff options
context:
space:
mode:
authorGravatar Liam Miller-Cushon <cushon@google.com>2017-03-01 08:18:37 +0000
committerGravatar Yue Gan <yueg@google.com>2017-03-01 12:35:58 +0000
commitdc857b3f0785e15d48500a4f45cea804612ad3a0 (patch)
tree6ed75b24085b04b20fd05b92983ec651193a1296 /src/java_tools
parentb869e584641521dc063f0589d7ce6a850ffc0b61 (diff)
Don't leak file managers
-- PiperOrigin-RevId: 148860690 MOS_MIGRATED_REVID=148860690
Diffstat (limited to 'src/java_tools')
-rw-r--r--src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java33
1 files changed, 16 insertions, 17 deletions
diff --git a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
index 6666e08c24..ad55b68e69 100644
--- a/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
+++ b/src/java_tools/buildjar/java/com/google/devtools/build/buildjar/javac/BlazeJavacMain.java
@@ -83,23 +83,22 @@ public class BlazeJavacMain {
Listener diagnostics = new Listener(context);
BlazeJavaCompiler compiler;
- JavacFileManager fileManager = new ClassloaderMaskingFileManager();
- JavacTask task =
- JavacTool.create()
- .getTask(
- errWriter,
- fileManager,
- diagnostics,
- javacArguments,
- ImmutableList.of() /*classes*/,
- fileManager.getJavaFileObjectsFromPaths(arguments.sourceFiles()),
- context);
- if (arguments.processors() != null) {
- task.setProcessors(arguments.processors());
- }
- fileManager.setContext(context);
- setLocations(fileManager, arguments);
- try {
+ try (JavacFileManager fileManager = new ClassloaderMaskingFileManager()) {
+ JavacTask task =
+ JavacTool.create()
+ .getTask(
+ errWriter,
+ fileManager,
+ diagnostics,
+ javacArguments,
+ ImmutableList.of() /*classes*/,
+ fileManager.getJavaFileObjectsFromPaths(arguments.sourceFiles()),
+ context);
+ if (arguments.processors() != null) {
+ task.setProcessors(arguments.processors());
+ }
+ fileManager.setContext(context);
+ setLocations(fileManager, arguments);
try {
ok = task.call();
} catch (PropagatedException e) {