If the config file does not end with a \n, the parser will append
one. When re-allocating the array though, it is mistakenly assuming
that 'len' is the length including the trailing NUL, but it does
not. So we must add 2 to len, when reallocating, not 1.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
if (len && len < MAX_CONFIG_FILE_SIZE && content[len - 1] != '\n') {
VIR_DEBUG("appending newline to busted config file %s", filename);
- if (VIR_REALLOC_N(content, len + 1) < 0)
+ if (VIR_REALLOC_N(content, len + 2) < 0)
goto cleanup;
content[len++] = '\n';
content[len] = '\0';