diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java index 9b7f094d0..86dbabca0 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/gitrepo/RepoCommand.java @@ -180,17 +180,11 @@ public ObjectId sha1(String uri, String ref) throws GitAPIException { public byte[] readFile(String uri, String ref, String path) throws GitAPIException, IOException { File dir = FileUtils.createTempDir("jgit_", ".git", null); //$NON-NLS-1$ //$NON-NLS-2$ - Repository repo = Git - .cloneRepository() - .setBare(true) - .setDirectory(dir) - .setURI(uri) - .call() - .getRepository(); - try { + try (Git git = Git.cloneRepository().setBare(true).setDirectory(dir) + .setURI(uri).call(); + Repository repo = git.getRepository()) { return readFileFromRepo(repo, ref, path); } finally { - repo.close(); FileUtils.delete(dir, FileUtils.RECURSIVE); } }