Free entry_buffer or it'll be leaked
authorMukund Sivaraman <muks@banu.com>
Mon, 31 Mar 2008 00:51:51 +0000 (17:51 -0700)
committerMukund Sivaraman <muks@banu.com>
Mon, 31 Mar 2008 00:51:51 +0000 (17:51 -0700)
vector_append() calls vector_insert() which makes a copy
of the passed buffer, so the caller can free its buffer.

src/log.c

index 00bb43f96db48a4687098059ad97b47d54db4d74..01b425635abafb5175551d6bce1946378fefd68b 100644 (file)
--- a/src/log.c
+++ b/src/log.c
@@ -150,6 +150,8 @@ log_message(int level, char *fmt, ...)
                 sprintf(entry_buffer, "%d %s", level, str);
                 vector_append(log_message_storage, entry_buffer,
                               strlen(entry_buffer) + 1);
+
+                safefree(entry_buffer);
                 goto out;
         }
 #ifdef HAVE_SYSLOG_H