From: Joel Rosdahl Date: Sat, 21 Nov 2009 09:34:04 +0000 (+0100) Subject: Fix bad memory access spotted by Valgrind X-Git-Tag: v3.0pre0~160 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b80dfc477b51c52fc82a40c7554e20890a600eae;p=thirdparty%2Fccache.git Fix bad memory access spotted by Valgrind --- diff --git a/NEWS b/NEWS index ab0657e3f..4273f0104 100644 --- a/NEWS +++ b/NEWS @@ -54,3 +54,5 @@ Bug fixes: - Fixed compilation warnings from GCC 4.3. - The command specified by CCACHE_PREFIX is no longer part of the hash. + + - Fixed bad memory access spotted by Valgrind. diff --git a/ccache.c b/ccache.c index 25cd7cb3e..253ada078 100644 --- a/ccache.c +++ b/ccache.c @@ -814,13 +814,15 @@ static void from_cache(enum fromcache_call_mode mode) } /* send the cpp stderr, if applicable */ - fd_cpp_stderr = open(cpp_stderr, O_RDONLY | O_BINARY); - if (fd_cpp_stderr != -1) { - copy_fd(fd_cpp_stderr, 2); - close(fd_cpp_stderr); - unlink(cpp_stderr); - free(cpp_stderr); - cpp_stderr = NULL; + if (cpp_stderr) { + fd_cpp_stderr = open(cpp_stderr, O_RDONLY | O_BINARY); + if (fd_cpp_stderr != -1) { + copy_fd(fd_cpp_stderr, 2); + close(fd_cpp_stderr); + unlink(cpp_stderr); + free(cpp_stderr); + cpp_stderr = NULL; + } } /* send the stderr */