diff --git a/man/signal-cli.1.adoc b/man/signal-cli.1.adoc index 62cc3b8c..969171c3 100644 --- a/man/signal-cli.1.adoc +++ b/man/signal-cli.1.adoc @@ -442,6 +442,7 @@ By default, recipients can select multiple options. *-o* OPTION [OPTION ...], *--option* OPTION [OPTION ...]*:: The options for the poll. +Between 2 and 10 options must be specified. === sendPollVote diff --git a/src/main/java/org/asamk/signal/commands/SendPollCreateCommand.java b/src/main/java/org/asamk/signal/commands/SendPollCreateCommand.java index 5c2d7d57..02b89e5e 100644 --- a/src/main/java/org/asamk/signal/commands/SendPollCreateCommand.java +++ b/src/main/java/org/asamk/signal/commands/SendPollCreateCommand.java @@ -24,6 +24,7 @@ import static org.asamk.signal.util.SendMessageResultUtils.outputResult; public class SendPollCreateCommand implements JsonRpcLocalCommand { private static final Logger logger = LoggerFactory.getLogger(SendPollCreateCommand.class); + private static final int MAX_POLL_OPTIONS = 10; @Override public String getName() { @@ -72,6 +73,9 @@ public class SendPollCreateCommand implements JsonRpcLocalCommand { if (options.size() < 2) { throw new UserErrorException("Poll needs at least two options"); } + if (options.size() > MAX_POLL_OPTIONS) { + throw new UserErrorException("Poll cannot have more than " + MAX_POLL_OPTIONS + " options"); + } try { var results = m.sendPollCreateMessage(question, !noMulti, options, recipientIdentifiers, notifySelf);