diff options
-rw-r--r-- | java/com/google/gerrit/server/query/change/ChangeData.java | 2 | ||||
-rw-r--r-- | java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java | 10 |
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 69f1a4e922..c74150694c 100644 --- a/java/com/google/gerrit/server/query/change/ChangeData.java +++ b/java/com/google/gerrit/server/query/change/ChangeData.java @@ -1011,7 +1011,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 790bcc5dd6..160e9f9645 100644 --- a/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java +++ b/java/com/google/gerrit/server/query/change/EqualsLabelPredicate.java @@ -108,7 +108,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; } |