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) {