From 8d8fc27f35d782bc304007da33a842f7ec8f56d3 Mon Sep 17 00:00:00 2001 From: Dave Borowitz Date: Thu, 29 Oct 2015 14:46:45 -0400 Subject: [PATCH] GetRelated: Fix NPE when a patch set has no groups This only happens for patch sets of changes that were not migrated in Schema_108, namely closed changes. The intent was to return no groups for those changes, but we were accidentally NPEing instead. Change-Id: Ia30f24da7fed984d8906574f848b3b4516a65e44 --- .../java/com/google/gerrit/server/change/GetRelated.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/GetRelated.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/GetRelated.java index fd6a899c42..6aa1a47fae 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/change/GetRelated.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/GetRelated.java @@ -24,7 +24,6 @@ import com.google.gerrit.reviewdb.client.PatchSet; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.CommonConverters; import com.google.gerrit.server.change.RelatedChangesSorter.PatchSetData; -import com.google.gerrit.server.git.GroupCollector; import com.google.gerrit.server.query.change.ChangeData; import com.google.gerrit.server.query.change.InternalChangeQuery; import com.google.gwtorm.server.OrmException; @@ -67,15 +66,14 @@ public class GetRelated implements RestReadView { private List getRelated(RevisionResource rsrc) throws OrmException, IOException { - if (GroupCollector.getGroups(rsrc).isEmpty()) { + Set groups = getAllGroups(rsrc.getChange().getId()); + if (groups.isEmpty()) { return Collections.emptyList(); } List cds = queryProvider.get() .enforceVisibility(true) - .byProjectGroups( - rsrc.getChange().getProject(), - getAllGroups(rsrc.getChange().getId())); + .byProjectGroups(rsrc.getChange().getProject(), groups); if (cds.isEmpty()) { return Collections.emptyList(); } if (cds.size() == 1