From a9e60dc1794dadaae6d73a1de3f5cf8418336771 Mon Sep 17 00:00:00 2001 From: Daniel Shahaf Date: Wed, 6 Dec 2017 22:49:19 +0000 Subject: users/13148 (and workers/42060): Abort the command line when replying "[n] No" to the RM_STAR_SILENT prompt. Patch by Stephane, rebased by Mikael. --- Src/exec.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'Src/exec.c') diff --git a/Src/exec.c b/Src/exec.c index 664d79079..3678ef84a 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -3251,19 +3251,24 @@ execcmd_exec(Estate state, Execcmd_params eparams, next = nextnode(node); if (s[0] == Star && !s[1]) { - if (!checkrmall(pwd)) - uremnode(args, node); + if (!checkrmall(pwd)) { + errflag |= ERRFLAG_ERROR; + break; + } } else if (l >= 2 && s[l - 2] == '/' && s[l - 1] == Star) { char t = s[l - 2]; + int rmall; s[l - 2] = 0; - if (!checkrmall(*s ? s : "/")) - uremnode(args, node); + rmall = checkrmall(s); s[l - 2] = t; + + if (!rmall) { + errflag |= ERRFLAG_ERROR; + break; + } } } - if (!nextnode(firstnode(args))) - errflag |= ERRFLAG_ERROR; } if (type == WC_FUNCDEF) { -- cgit 1.4.1