Merge "Use auto-closeable RevWalk when creating review notes"
diff --git a/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java b/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
index 853585d..72c9ec9 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/reviewnotes/CreateReviewNotes.java
@@ -129,25 +129,24 @@
       return;
     }
 
-    RevWalk rw = new RevWalk(git);
-    try {
-      RevCommit n = rw.parseCommit(newObjectId);
-      rw.markStart(n);
-      if (n.getParentCount() == 1 && n.getParent(0).equals(oldObjectId)) {
-        rw.markUninteresting(rw.parseCommit(oldObjectId));
-      } else {
-        markUninteresting(git, branch, rw, oldObjectId);
+    try (RevWalk rw = new RevWalk(git)) {
+      try {
+        RevCommit n = rw.parseCommit(newObjectId);
+        rw.markStart(n);
+        if (n.getParentCount() == 1 && n.getParent(0).equals(oldObjectId)) {
+          rw.markUninteresting(rw.parseCommit(oldObjectId));
+        } else {
+          markUninteresting(git, branch, rw, oldObjectId);
+        }
+      } catch (Exception e) {
+        log.error(e.getMessage(), e);
+        return;
       }
-    } catch (Exception e) {
-      log.error(e.getMessage(), e);
-      return;
-    }
 
-    if (monitor == null) {
-      monitor = NullProgressMonitor.INSTANCE;
-    }
+      if (monitor == null) {
+        monitor = NullProgressMonitor.INSTANCE;
+      }
 
-    try {
       for (RevCommit c : rw) {
         ObjectId content = createNoteContent(loadPatchSet(c, branch));
         if (content != null) {
@@ -156,8 +155,6 @@
           getMessage().append("* ").append(c.getShortMessage()).append("\n");
         }
       }
-    } finally {
-      rw.close();
     }
   }