From: Bruno Haible Date: Fri, 31 Mar 2017 20:43:35 +0000 (+0200) Subject: glob: Fix invalid free() call. X-Git-Tag: v1.0~6301 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=b1d7f3165ba1c7a44a29017eb80491094aa240ba;p=gnulib.git glob: Fix invalid free() call. * lib/glob.c (glob): Reset malloc_home_dir when assigning a pointer to static storage to home_dir. Reported by Coverity via Tim Rühsen. --- diff --git a/ChangeLog b/ChangeLog index cca7542d45..2e011615e4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2017-03-31 Bruno Haible + + glob: Fix invalid free() call. + * lib/glob.c (glob): Reset malloc_home_dir when assigning a pointer to + static storage to home_dir. + Reported by Coverity via Tim Rühsen. + 2017-03-31 Bruno Haible glob: Fix memory leaks. diff --git a/lib/glob.c b/lib/glob.c index 1337817c22..93050389cd 100644 --- a/lib/glob.c +++ b/lib/glob.c @@ -809,7 +809,10 @@ glob (const char *pattern, int flags, int (*errfunc) (const char *, int), goto out; } else - home_dir = (char *) "~"; /* No luck. */ + { + home_dir = (char *) "~"; /* No luck. */ + malloc_home_dir = 0; + } } # endif /* WINDOWS32 */ # endif