summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPrudhvi Akhil Alahari <prudhvi@codeaurora.org>2021-05-27 13:51:57 +0530
committerPrudhvi Akhil Alahari <prudhvi@codeaurora.org>2021-05-27 13:51:57 +0530
commitbb0d4f555f6ec02c9cfb36c8ceadfd1a3f1092e1 (patch)
tree40e09db4476637ef25f7153693c163bca743374b
parentdfda7ddfa7401862eadba888fc03d8d9fd344003 (diff)
parent6cb377f998cf6c3543d25b3250dfca8d0ee18532 (diff)
Merge branch 'stable-3.0' into stable-3.1
* stable-3.0: Fix to not throw NPE while accessing draft refs EqualsLabelPredicate: Fix bug that prevents matching owner votes Change-Id: I41bb22fa6d739fa2719b24d4e6f13a5099ae6567
-rw-r--r--java/com/google/gerrit/server/query/change/ChangeData.java2
-rw-r--r--java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java10
2 files changed, 10 insertions, 2 deletions
diff --git a/java/com/google/gerrit/server/query/change/ChangeData.java b/java/com/google/gerrit/server/query/change/ChangeData.java
index c6beac4302..8459b9f525 100644
--- a/java/com/google/gerrit/server/query/change/ChangeData.java
+++ b/java/com/google/gerrit/server/query/change/ChangeData.java
@@ -975,7 +975,7 @@ public class ChangeData {
}
draftsByUser = new HashMap<>();
- for (Ref ref : commentsUtil.getDraftRefs(notes.getChangeId())) {
+ for (Ref ref : commentsUtil.getDraftRefs(notes().getChangeId())) {
Account.Id account = Account.Id.fromRefSuffix(ref.getName());
if (account != null
// Double-check that any drafts exist for this user after
diff --git a/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java b/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java
index 62b1144184..6997e0228a 100644
--- a/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java
+++ b/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java
@@ -107,7 +107,15 @@ public class EqualsLabelPredicate extends ChangeIndexPredicate {
return false;
}
- if (account != null && !account.equals(approver)) {
+ if (account != null
+ && !account.equals(approver)
+ && !account.equals(ChangeQueryBuilder.OWNER_ACCOUNT_ID)) {
+ return false;
+ }
+
+ if (account != null
+ && account.equals(ChangeQueryBuilder.OWNER_ACCOUNT_ID)
+ && !cd.change().getOwner().equals(approver)) {
return false;
}