421114: RuntimeException when refreshing Eclipse review
Bug: 421114
Change-Id: I15753de69ad75aa74e7af04d155acb9ff6d1db6e
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=421114
Signed-off-by: Tomasz Zarna <tomasz.zarna@tasktop.com>
diff --git a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
index e591f9c..1ac8d26 100644
--- a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
+++ b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
@@ -55,7 +55,6 @@
import com.google.gerrit.common.data.PatchSetDetail;
import com.google.gerrit.reviewdb.Account;
import com.google.gerrit.reviewdb.Change;
-import com.google.gerrit.reviewdb.Change.Status;
import com.google.gerrit.reviewdb.ChangeMessage;
import com.google.gerrit.reviewdb.PatchSetApproval;
import com.google.gerrit.reviewdb.UserIdentity;
@@ -367,8 +366,9 @@
for (Label label : record.getLabels()) {
IApprovalType approvalType = typeForName.get(label.getLabel());
if (approvalType == null) {
- if (detail.getChange().getStatus() == Status.ABANDONED) {
- // typeForName can be empty for an abandoned change as it no longer provides approval types info
+ if (detail.getChange().getStatus().isClosed()) {
+ // typeForName can be empty for a closed* change as it no longer provides approval types info
+ // * abandoned or reverted
continue;
}
throw new RuntimeException("Internal Error, no approval type found for: " + label.getLabel()); //$NON-NLS-1$
@@ -398,7 +398,7 @@
public static ReviewStatus getReviewStatus(com.google.gerrit.reviewdb.Change.Status gerritStatus) {
if (gerritStatus == null) {
- // DRAFT is not correctly parsed for ChangeInfo since Change.Status does not define the corresponding enum field
+ // DRAFT is not correctly parsed for ChangeInfo since Change.Status does not define the corresponding enum field
return ReviewStatus.DRAFT;
}
switch (gerritStatus) {