Open auto-closeable resources in try-with-resource Change-Id: I3097e922c1b238657a77dadeaabce8035cd28467
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/DescribeServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/DescribeServlet.java index adc280a..fb4aa0f 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/DescribeServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/DescribeServlet.java
@@ -62,9 +62,9 @@ if (name == null) { return; } - Writer out = startRenderText(req, res); - out.write(RefServlet.sanitizeRefForText(name)); - out.close(); + try (Writer out = startRenderText(req, res)) { + out.write(RefServlet.sanitizeRefForText(name)); + } } @Override
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/HostIndexServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/HostIndexServlet.java index f0df112..ca35727 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/HostIndexServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/HostIndexServlet.java
@@ -179,22 +179,21 @@ return; } - Writer writer = startRenderText(req, res); - for (RepositoryDescription repo : descs.values()) { - for (String name : branches) { - String ref = repo.branches.get(name); - if (ref == null) { - // Print stub (forty '-' symbols) - ref = "----------------------------------------"; + try (Writer writer = startRenderText(req, res)) { + for (RepositoryDescription repo : descs.values()) { + for (String name : branches) { + String ref = repo.branches.get(name); + if (ref == null) { + // Print stub (forty '-' symbols) + ref = "----------------------------------------"; + } + writer.write(ref); + writer.write(' '); } - writer.write(ref); - writer.write(' '); + writer.write(GitilesUrls.NAME_ESCAPER.apply(stripPrefix(prefix, repo.name))); + writer.write('\n'); } - writer.write(GitilesUrls.NAME_ESCAPER.apply(stripPrefix(prefix, repo.name))); - writer.write('\n'); } - writer.flush(); - writer.close(); } @Override
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java index e9f95a7..fd3f3f9 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java
@@ -225,11 +225,15 @@ } private static RevWalk newWalk(Repository repo, GitilesView view, GitilesAccess access) - throws MissingObjectException, IncorrectObjectTypeException, IOException { + throws MissingObjectException, IOException { RevWalk walk = new RevWalk(repo); - walk.markStart(walk.parseCommit(view.getRevision().getId())); - if (view.getOldRevision() != Revision.NULL) { - walk.markUninteresting(walk.parseCommit(view.getOldRevision().getId())); + try { + walk.markStart(walk.parseCommit(view.getRevision().getId())); + if (view.getOldRevision() != Revision.NULL) { + walk.markUninteresting(walk.parseCommit(view.getOldRevision().getId())); + } + } catch (IncorrectObjectTypeException iote) { + return null; } setTreeFilter(walk, view, access); List<RevFilter> filters = new ArrayList<>(3); @@ -288,25 +292,18 @@ return null; } - RevWalk walk = null; - try { - walk = newWalk(repo, view, access); - } catch (IncorrectObjectTypeException e) { - return null; - } + try (RevWalk walk = newWalk(repo, view, access)) { + if (walk == null) { + return null; + } - Optional<ObjectId> start; - try { - start = getStart(view.getParameters(), walk.getObjectReader()); - } catch (IOException e) { - walk.close(); - throw e; - } - if (start == null) { - return null; - } + Optional<ObjectId> start = getStart(view.getParameters(), walk.getObjectReader()); + if (start == null) { + return null; + } - return new Paginator(walk, getLimit(view), start.orNull()); + return new Paginator(walk, getLimit(view), start.orNull()); + } } private static int getLimit(GitilesView view) {
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/PathServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/PathServlet.java index bd6219b..91e7060 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/PathServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/PathServlet.java
@@ -390,8 +390,7 @@ RevTree root = getRoot(view, rw); String path = view.getPathPart(); - TreeWalk tw = new TreeWalk(rw.getObjectReader()); - try { + try (TreeWalk tw = new TreeWalk(rw.getObjectReader())) { tw.addTree(root); tw.setRecursive(false); if (path.isEmpty()) { @@ -415,7 +414,6 @@ } catch (IOException | RuntimeException e) { // Fallthrough. } - tw.close(); return null; }
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/doc/DocServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/doc/DocServlet.java index 822f2c4..9007928 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/doc/DocServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/doc/DocServlet.java
@@ -222,24 +222,25 @@ } ObjectReader reader = rw.getObjectReader(); - TreeWalk tw = TreeWalk.forPath(reader, path, root); - if (tw == null) { + try (TreeWalk tw = TreeWalk.forPath(reader, path, root)) { + if (tw == null) { + return null; + } + if ((tw.getRawMode(0) & TYPE_MASK) == TYPE_TREE) { + if (findIndexFile(tw)) { + path = tw.getPathString(); + } else { + return null; + } + } + if ((tw.getRawMode(0) & TYPE_MASK) == TYPE_FILE) { + if (!path.endsWith(".md")) { + return null; + } + return new MarkdownFile(path, tw.getObjectId(0)); + } return null; } - if ((tw.getRawMode(0) & TYPE_MASK) == TYPE_TREE) { - if (findIndexFile(tw)) { - path = tw.getPathString(); - } else { - return null; - } - } - if ((tw.getRawMode(0) & TYPE_MASK) == TYPE_FILE) { - if (!path.endsWith(".md")) { - return null; - } - return new MarkdownFile(path, tw.getObjectId(0)); - } - return null; } private static boolean findIndexFile(TreeWalk tw) throws IOException {