summaryrefslogtreecommitdiff
path: root/Src/Zle/computil.c
diff options
context:
space:
mode:
authorAxel Beckert <abe@deuxchevaux.org>2018-04-09 00:42:15 +0200
committerAxel Beckert <abe@deuxchevaux.org>2018-04-09 00:42:15 +0200
commitfe36c1ada77f817dbeeeed5ee70c7ba08eeb1d18 (patch)
tree0229967da5e73bd29a2d6014c847509b361f3631 /Src/Zle/computil.c
parent1521c7d0f7e607b789564e819173e228e9475137 (diff)
parentf9e9dce5443f323b340303596406f9d3ce11d23a (diff)
downloadzsh-fe36c1ada77f817dbeeeed5ee70c7ba08eeb1d18.tar.gz
zsh-fe36c1ada77f817dbeeeed5ee70c7ba08eeb1d18.zip
Merge tag 'zsh-5.5' and hence branch 'upstream' into branch 'debian'
Release 5.5 of zsh
Diffstat (limited to 'Src/Zle/computil.c')
-rw-r--r--Src/Zle/computil.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c
index 4ce8eeee5..5526e0ad0 100644
--- a/Src/Zle/computil.c
+++ b/Src/Zle/computil.c
@@ -2675,7 +2675,7 @@ bin_comparguments(char *nam, char **args, UNUSED(Options ops), UNUSED(int func))
for (; lstate; lstate = lstate->snext) {
if (lstate->actopts &&
- (lstate->opt || lstate->def ||
+ (lstate->opt || (ca_doff && lstate->def) ||
(lstate->def && lstate->def->opt &&
(lstate->def->type == CAA_OPT ||
(lstate->def->type >= CAA_RARGS &&
@@ -3022,6 +3022,7 @@ parse_cvdef(char *nam, char **args)
if (hassep && !sep && name + bs + 1 < p) {
freecvdef(ret);
+ if (xor) freearray(xor);
zwarnnam(nam, "no multi-letter values with empty separator allowed");
return NULL;
}
@@ -3035,6 +3036,7 @@ parse_cvdef(char *nam, char **args)
if (!*p) {
freecvdef(ret);
+ if (xor) freearray(xor);
zwarnnam(nam, "invalid value definition: %s", *args);
return NULL;
}
@@ -3046,6 +3048,7 @@ parse_cvdef(char *nam, char **args)
}
if (c && c != ':') {
freecvdef(ret);
+ if (xor) freearray(xor);
zwarnnam(nam, "invalid value definition: %s", *args);
return NULL;
}
@@ -3054,6 +3057,7 @@ parse_cvdef(char *nam, char **args)
if (c == ':') {
if (hassep && !sep) {
freecvdef(ret);
+ if (xor) freearray(xor);
zwarnnam(nam, "no value with argument with empty separator allowed");
return NULL;
}