aboutsummaryrefslogtreecommitdiff
path: root/shell/cmdedit.c
diff options
context:
space:
mode:
Diffstat (limited to 'shell/cmdedit.c')
-rw-r--r--shell/cmdedit.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index 993e83b21..272d22fc0 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -1007,12 +1007,14 @@ static int find_match(char *matchBuf, int *len_with_quotes)
/* skip first not quoted '\'' or '"' */
for (i = 0; int_buf[i] == '\'' || int_buf[i] == '"'; i++);
/* collapse quote or unquote // or /~ */
- while ((int_buf[i] & ~QUOT) == '/' && (
- (int_buf[i + 1] & ~QUOT) == '/'
- || (int_buf[i + 1] & ~QUOT) ==
- '~')) i++;
- if (i)
+ while ((int_buf[i] & ~QUOT) == '/' &&
+ ((int_buf[i + 1] & ~QUOT) == '/'
+ || (int_buf[i + 1] & ~QUOT) == '~')) {
+ i++;
+ }
+ if (i) {
collapse_pos(0, i);
+ }
/* set only match and destroy quotes */
j = 0;