From 9443b0bc5efa33832a17567f98f8a950e29afbec Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Wed, 24 Sep 2025 05:45:33 +0200 Subject: [PATCH] vi: warn about range in ':!' command Currently vi in Busybox doesn't support filtering text through an external command with ':1,2!cmd'. Instead it behaves as if no range had been supplied and displays the output of the command. Issue a warning and do nothing in such cases. function old new delta colon 3993 4010 +17 Signed-off-by: Ron Yorston Signed-off-by: Denys Vlasenko --- editors/vi.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/editors/vi.c b/editors/vi.c index 34932f60c..f48bcf514 100644 --- a/editors/vi.c +++ b/editors/vi.c @@ -2951,6 +2951,10 @@ static void colon(char *buf) else if (cmd[0] == '!') { // run a cmd int retcode; // :!ls run the + if (GOT_ADDRESS) { + status_line_bold("Range not allowed"); + goto ret; + } exp = expand_args(buf + 1); if (exp == NULL) goto ret;