Subject: [PATCH] add-interactive: reject malformed numerical input

From: "Seonghyeon Cho (조성현) via GitGitGadget" <[email-masked]>
Date: Sat, 30 Aug 2025 11:31:35 +0000

From: Seonghyeon Cho <[email-masked]>

The list-and-choose interface accepts malformed input such as "2m3" and
interprets it as "2-", silently selecting a range to the end. This is
misleading and makes it easy to select unintended items.

Reject such input by treating it as invalid.

Signed-off-by: Seonghyeon Cho <[email-masked]>
---
    add-interactive: reject malformed numerical input

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2044%2Fsh-cho%2Freject-malformed-input-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2044/sh-cho/reject-malformed-input-v1
Pull-Request: https://github.com/git/git/pull/2044

 add-interactive.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/add-interactive.c b/add-interactive.c
index 3e692b47ec..86ff632288 100644
--- a/add-interactive.c
+++ b/add-interactive.c
@@ -396,6 +396,8 @@ static ssize_t list_and_choose(struct add_i_state *s,
 					if (endp != p + sep)
 						from = -1;
 				}
+				else
+					from = -1;
 			}
 
 			if (p[sep])

base-commit: 6ad802182101d622e6a4132f48292ddfa79e2024
-- 
gitgitgadget