From 66afa24fb36f15c49aed76be2f04bd23dd0e55c8 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Sat, 23 Dec 2017 00:55:57 +0100 Subject: [PATCH] sequencer: report when noop has an argument The noop command cannot accept any argument, but we never told the user about any bogus argument. Fix that. while at it, mention clearly when an argument is required but missing (for commands *other* than noop). Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- sequencer.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/sequencer.c b/sequencer.c index e9fef58ba0..b005e412a5 100644 --- a/sequencer.c +++ b/sequencer.c @@ -1261,18 +1261,23 @@ static int parse_insn_line(struct todo_item *item, const char *bol, char *eol) if (i >= TODO_COMMENT) return -1; + /* Eat up extra spaces/ tabs before object name */ + padding = strspn(bol, " \t"); + bol += padding; + if (item->command == TODO_NOOP) { + if (bol != eol) + return error(_("%s does not accept arguments: '%s'"), + command_to_string(item->command), bol); item->commit = NULL; item->arg = bol; item->arg_len = eol - bol; return 0; } - /* Eat up extra spaces/ tabs before object name */ - padding = strspn(bol, " \t"); if (!padding) - return -1; - bol += padding; + return error(_("missing arguments for %s"), + command_to_string(item->command)); if (item->command == TODO_EXEC) { item->commit = NULL;