Possible segfault in file2strvec introduced by latest CVE fix

'rbuf' used before allocated.
Revealed by static analysis
This commit is contained in:
Jan Rybar 2018-07-23 14:44:52 +02:00 committed by Craig Small
parent c6a6b1ca1d
commit 36e066df52

View File

@ -720,7 +720,7 @@ static char** file2strvec(const char* directory, const char* what) {
#undef ARG_LEN #undef ARG_LEN
if (end_of_file && if (end_of_file &&
((n > 0 && buf[n-1] != '\0') || /* last read char not null */ ((n > 0 && buf[n-1] != '\0') || /* last read char not null */
(n <= 0 && rbuf[tot-1] != '\0'))) /* last read char not null */ (n <= 0 && rbuf && rbuf[tot-1] != '\0'))) /* last read char not null */
buf[n++] = '\0'; /* so append null-terminator */ buf[n++] = '\0'; /* so append null-terminator */
if (n <= 0) break; /* unneeded (end_of_file = 1) but avoid realloc */ if (n <= 0) break; /* unneeded (end_of_file = 1) but avoid realloc */