diff options
Diffstat (limited to 'gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java')
-rw-r--r-- | gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java index 893cca64dc..b5fc953486 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java @@ -955,6 +955,11 @@ public class ReceiveCommits implements PreReceiveHook, PostReceiveHook { reject(cmd, "change " + change.getId() + " closed"); return false; } + if (change.getStatus().equals(AbstractEntity.Status.DEFERRED) + && topic == null) { + reject(cmd, "change " + change.getId() + " closed"); + return false; + } Topic.Id topicId = topic != null ? topic.getId() : null; ChangeSet.Id csId = topic != null ? topic.currentChangeSetId() : null; @@ -986,6 +991,10 @@ public class ReceiveCommits implements PreReceiveHook, PostReceiveHook { reject(cmd, "change " + change.getId() + " closed"); return false; } + if (change.getStatus().equals(AbstractEntity.Status.DEFERRED) && !topic) { + reject(cmd, "change " + change.getId() + " closed"); + return false; + } if (toReplace.containsKey(change.getId())) { reject(cmd, "duplicate request"); return false; |