From b9500900b14102e87a57840a89b6714b8b7840d2 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 30 Oct 2008 20:29:55 +0000 Subject: 25972: leaked and uninitialised memory found by valgrind --- ChangeLog | 3 +++ Src/Zle/complete.c | 2 +- Src/Zle/compmatch.c | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index dda2dbb04..6a9804c59 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2008-10-30 Peter Stephenson + * 25972: Src/Zle/complete.c, Src/Zle/compmatch.c: leaked + and uninitialised memory found by valgrind. + * 25971: Src/builtin.c, Src/zsh.h: fix 25937 which broke some builtins that handle options themselves. diff --git a/Src/Zle/complete.c b/Src/Zle/complete.c index 97d148b3a..bc56bc05a 100644 --- a/Src/Zle/complete.c +++ b/Src/Zle/complete.c @@ -464,7 +464,7 @@ parse_class(Cpattern p, char *iptr) * As the input string is metafied, but shouldn't contain shell * tokens, we can just add our own tokens willy nilly. */ - optr = p->u.str = zalloc((optr-iptr) + 1); + optr = p->u.str = zhalloc((optr-iptr) + 1); while (firsttime || *iptr != endchar) { int ch; diff --git a/Src/Zle/compmatch.c b/Src/Zle/compmatch.c index f92caa7bf..7a675a544 100644 --- a/Src/Zle/compmatch.c +++ b/Src/Zle/compmatch.c @@ -1687,6 +1687,7 @@ bld_line(Cmatcher mp, char **linep, char *mword, char *word, int wlen, int sfx) llen = mp->llen; rl = 0; + *line = '\0'; if (sfx) { /* -- cgit 1.4.1