diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/logging.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/src/logging.c b/src/logging.c index 526b39e3..6797afcd 100644 --- a/src/logging.c +++ b/src/logging.c @@ -221,19 +221,10 @@ static void _logp(unsigned int subsys, int level, char *file, int line, else if (osmo_log_info->filter_fn) output = osmo_log_info->filter_fn(&log_context, tar); + if (!output) + continue; - if (output) { - /* FIXME: copying the va_list is an ugly - * workaround against a bug hidden somewhere in - * _output. If we do not copy here, the first - * call to _output() will corrupt the va_list - * contents, and any further _output() calls - * with the same va_list will segfault */ - va_list bp; - va_copy(bp, ap); - _output(tar, subsys, level, file, line, cont, format, bp); - va_end(bp); - } + _output(tar, subsys, level, file, line, cont, format, ap); } } |