From 8ddcdad0c1559612b72b733e907d10806415d4fb Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Tue, 26 Jan 2016 22:44:14 -0800 Subject: 37802: Clarify zparseopts documention. zparseopts "X::" specifier should also look for the optional argument in the word after "-X". --- ChangeLog | 5 +++++ Src/Modules/zutil.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5e6b148a9..8a8666c1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,11 @@ 2016-01-26 Barton E. Schaefer + * 37802: Doc/Zsh/mod_zutil.yo: Clarify zparseopts description. + + * 37802: Src/Modules/zutil.c: zparseopts "X::" specifier should + also look for the optional argument in the word after "-X". + * 37785: Src/params.c: skip autoload parameters for "typeset -p" 2016-01-25 Barton E. Schaefer diff --git a/Src/Modules/zutil.c b/Src/Modules/zutil.c index 376cd8402..d98028a84 100644 --- a/Src/Modules/zutil.c +++ b/Src/Modules/zutil.c @@ -1833,7 +1833,8 @@ bin_zparseopts(char *nam, char **args, UNUSED(Options ops), UNUSED(int func)) if (o[1]) { add_opt_val(d, o + 1); break; - } else if (!(d->flags & ZOF_OPT)) { + } else if (!(d->flags & ZOF_OPT) || + (pp[1] && pp[1][0] != '-')) { if (!pp[1]) { zwarnnam(nam, "missing argument for option: %s", d->name); @@ -1859,7 +1860,8 @@ bin_zparseopts(char *nam, char **args, UNUSED(Options ops), UNUSED(int func)) if (*e) add_opt_val(d, e); - else if (!(d->flags & ZOF_OPT)) { + else if (!(d->flags & ZOF_OPT) || + (pp[1] && pp[1][0] != '-')) { if (!pp[1]) { zwarnnam(nam, "missing argument for option: %s", d->name); -- cgit 1.4.1