diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | Src/Zle/computil.c | 5 |
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index 68e6f8631..1d0560fe4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2001-07-18 Sven Wischnowsky <wischnow@zsh.org> + * 15409: Src/Zle/computil.c: fix for 15407; there may be sets + without matches + * 15407: Completion/Base/Utility/_describe, Completion/Zsh/Command/_zstyle, Doc/Zsh/compsys.yo, Src/Zle/complist.c, Src/Zle/compresult.c, Src/Zle/computil.c: diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c index 522c6356d..32147dd52 100644 --- a/Src/Zle/computil.c +++ b/Src/Zle/computil.c @@ -213,7 +213,7 @@ cd_init(char *nam, char *sep, char **args, int disp) freecdsets(cd_state.sets); return 1; } - for (strp = &(set->strs); *ap; ap++) { + for (str = NULL, strp = &(set->strs); *ap; ap++) { *strp = str = (Cdstr) zalloc(sizeof(*str)); strp = &(str->next); @@ -231,7 +231,8 @@ cd_init(char *nam, char *sep, char **args, int disp) *tmp = '\0'; str->str = str->match = ztrdup(rembslash(*ap)); } - str->next = NULL; + if (str) + str->next = NULL; if (*++args && **args != '-') { if (!(ap = get_user_var(*args))) { |