summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2007-07-26 13:55:52 +0000
committerLennart Poettering <lennart@poettering.net>2007-07-26 13:55:52 +0000
commit042cb0939431b47e7d6ac91b89d8ef9ab0ce7744 (patch)
tree2aebc804c30d0ed8bb7a4e1fb991b3d65ed9284a
parentbc17b8ea2d772e5069fbef4dde24ef9c63f1cfa1 (diff)
make valgrind shut up regarding non-freed ident strings. other modernizations
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1544 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r--src/pulsecore/log.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/pulsecore/log.c b/src/pulsecore/log.c
index a1197eb5..53f8974c 100644
--- a/src/pulsecore/log.c
+++ b/src/pulsecore/log.c
@@ -26,7 +26,6 @@
#include <config.h>
#endif
-#include <assert.h>
#include <stdarg.h>
#include <stdio.h>
#include <unistd.h>
@@ -40,6 +39,7 @@
#include <pulse/xmalloc.h>
#include <pulse/util.h>
+#include <pulsecore/macro.h>
#include <pulsecore/core-util.h>
#include "log.h"
@@ -79,13 +79,22 @@ void pa_log_set_ident(const char *p) {
log_ident_local = pa_xstrdup(log_ident);
}
+/* To make valgrind shut up. */
+static void ident_destructor(void) PA_GCC_DESTRUCTOR;
+static void ident_destructor(void) {
+ pa_xfree(log_ident);
+ pa_xfree(log_ident_local);
+}
+
void pa_log_set_maximal_level(pa_log_level_t l) {
- assert(l < PA_LOG_LEVEL_MAX);
+ pa_assert(l < PA_LOG_LEVEL_MAX);
+
maximal_level = l;
}
void pa_log_set_target(pa_log_target_t t, void (*func)(pa_log_level_t l, const char*s)) {
- assert(t == PA_LOG_USER || !func);
+ pa_assert(t == PA_LOG_USER || !func);
+
log_target = t;
user_log_func = func;
}
@@ -101,8 +110,8 @@ void pa_log_levelv_meta(
const char *e;
char *text, *t, *n, *location;
- assert(level < PA_LOG_LEVEL_MAX);
- assert(format);
+ pa_assert(level < PA_LOG_LEVEL_MAX);
+ pa_assert(format);
if ((e = getenv(ENV_LOGLEVEL)))
maximal_level = atoi(e);
@@ -218,6 +227,7 @@ void pa_log_levelv(pa_log_level_t level, const char *format, va_list ap) {
void pa_log_level(pa_log_level_t level, const char *format, ...) {
va_list ap;
+
va_start(ap, format);
pa_log_levelv_meta(level, NULL, 0, NULL, format, ap);
va_end(ap);