diff options
-rw-r--r-- | gerrit-server/src/main/java/com/google/gerrit/server/change/PostReview.java | 5 | ||||
-rw-r--r-- | gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ReviewCommand.java | 11 |
2 files changed, 13 insertions, 3 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/PostReview.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/PostReview.java index 2efa6110e5..9fb6b75477 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/change/PostReview.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/PostReview.java @@ -88,6 +88,7 @@ public class PostReview implements RestModifyView<RevisionResource, Input> { public NotifyHandling notify = NotifyHandling.ALL; public boolean changeReviewable; + public boolean dontAddReviewNote = false; } public static enum DraftHandling { @@ -157,7 +158,9 @@ public class PostReview implements RestModifyView<RevisionResource, Input> { boolean dirty = false; dirty |= insertComments(revision, input.comments, input.drafts); dirty |= updateLabels(revision, input.labels); - dirty |= insertMessage(revision, input.message); + if (!input.dontAddReviewNote) { + dirty |= insertMessage(revision, input.message); + } if (dirty) { db.changes().update(Collections.singleton(change)); db.commit(); diff --git a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ReviewCommand.java b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ReviewCommand.java index a26dfd7259..37f75e744a 100644 --- a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ReviewCommand.java +++ b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/commands/ReviewCommand.java @@ -287,8 +287,15 @@ public class ReviewCommand extends SshCommand { // If review labels are being applied, the comment will be included // on the review note. We don't need to add it again on the abandon, // defer or restore comment. - if (!review.labels.isEmpty() && (abandonChange || deferChange || restoreChange)) { - changeComment = null; + if (abandonChange || deferChange || restoreChange) { + if (!review.labels.isEmpty()) { + changeComment = null; + } + else { + // If no review labels applied, this drops the review note. + // The comment is visible in the abandon, defer or restore comment. + review.dontAddReviewNote = true; + } } try { |