Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomasz Zarna2017-06-20 07:43:46 +0000
committerSam Davis2017-07-10 18:44:56 +0000
commitdf589d62b0a09eb281b767a8e89d0ee8649cc094 (patch)
treedbfc2c97f67d05c891840552e3c0e6204ab3c9ff
parentc5fd0abb32173fe42a6bcc98209fa94da82a20f6 (diff)
downloadorg.eclipse.mylyn.reviews-df589d62b0a09eb281b767a8e89d0ee8649cc094.tar.gz
org.eclipse.mylyn.reviews-df589d62b0a09eb281b767a8e89d0ee8649cc094.tar.xz
org.eclipse.mylyn.reviews-df589d62b0a09eb281b767a8e89d0ee8649cc094.zip
close RevWalks using when parsing commits
-rw-r--r--org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewHarness.java10
-rw-r--r--org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/egit/EGitUiUtil.java16
-rw-r--r--org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/factories/OpenParentCommitUiFactory.java7
3 files changed, 20 insertions, 13 deletions
diff --git a/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewHarness.java b/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewHarness.java
index 571d1a5d5..30cf160be 100644
--- a/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewHarness.java
+++ b/org.eclipse.mylyn.gerrit.tests/src/org/eclipse/mylyn/internal/gerrit/core/remote/ReviewHarness.java
@@ -19,6 +19,7 @@ import static org.junit.Assert.assertThat;
import static org.junit.Assert.fail;
import java.io.File;
+import java.io.IOException;
import java.math.BigInteger;
import java.net.Proxy;
import java.security.NoSuchAlgorithmException;
@@ -216,8 +217,7 @@ class ReviewHarness {
void checkoutPatchSet(int number) throws Exception {
IReviewItemSet patchSet = getReview().getSets().get(0);
ObjectId ref = git.getRepository().resolve(patchSet.getRevision());
- RevWalk walker = new RevWalk(git.getRepository());
- RevCommit targetCommit = walker.parseCommit(ref);
+ RevCommit targetCommit = parseCommit(ref);
//make sure to checkout the correct commit
assertThat(targetCommit.toString(), is(commitId));
@@ -229,6 +229,12 @@ class ReviewHarness {
.call();
}
+ private RevCommit parseCommit(ObjectId ref) throws IOException {
+ try (RevWalk walker = new RevWalk(git.getRepository())) {
+ return walker.parseCommit(ref);
+ }
+ }
+
GerritClient getClient() {
return client;
}
diff --git a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/egit/EGitUiUtil.java b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/egit/EGitUiUtil.java
index 3be66d419..51f19c9cd 100644
--- a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/egit/EGitUiUtil.java
+++ b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/egit/EGitUiUtil.java
@@ -50,18 +50,18 @@ import com.google.gerrit.reviewdb.Project;
/**
* Provides common UI utilities.
- *
+ *
* @author Steffen Pingel
* @author Sascha Scholz
*/
public class EGitUiUtil {
- public static RevCommit getRevCommit(Repository repository, PatchSet target) throws AmbiguousObjectException,
- IOException, MissingObjectException, IncorrectObjectTypeException {
+ public static RevCommit getRevCommit(Repository repository, PatchSet target)
+ throws AmbiguousObjectException, IOException, MissingObjectException, IncorrectObjectTypeException {
ObjectId ref = repository.resolve(target.getRevision().get());
- RevWalk walker = new RevWalk(repository);
- RevCommit targetCommit = walker.parseCommit(ref);
- return targetCommit;
+ try (RevWalk walker = new RevWalk(repository)) {
+ return walker.parseCommit(ref);
+ }
}
private static RevCommit fetchRefSpec(IProgressMonitor monitor, Repository repository, RemoteConfig remote,
@@ -73,7 +73,9 @@ public class EGitUiUtil {
op.setCredentialsProvider(new EGitCredentialsProvider());
FetchResult result = op.execute(monitor);
ObjectId resultRef = result.getAdvertisedRef(refSpec.getSource()).getObjectId();
- return new RevWalk(repository).parseCommit(resultRef);
+ try (RevWalk walker = new RevWalk(repository)) {
+ return walker.parseCommit(resultRef);
+ }
}
public static RevCommit fetchPatchSet(IProgressMonitor monitor, Repository repository, RemoteConfig remote,
diff --git a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/factories/OpenParentCommitUiFactory.java b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/factories/OpenParentCommitUiFactory.java
index 825ea6d56..c6a4f4c12 100644
--- a/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/factories/OpenParentCommitUiFactory.java
+++ b/org.eclipse.mylyn.gerrit.ui/src/org/eclipse/mylyn/internal/gerrit/ui/factories/OpenParentCommitUiFactory.java
@@ -94,10 +94,9 @@ public class OpenParentCommitUiFactory extends OpenCommitUiFactory {
private RevCommit getRevCommit() throws AmbiguousObjectException, IOException {
ObjectId ref = repository.resolve(commitId);
- RevWalk walker = new RevWalk(repository);
- RevCommit targetCommit = walker.parseCommit(ref);
- return targetCommit;
-
+ try (RevWalk walker = new RevWalk(repository)) {
+ return walker.parseCommit(ref);
+ }
}
}

Back to the top