From 5d95b081721b54eb33355bd79e299ef3eca388f4 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Mon, 3 Nov 2014 13:30:14 +0100 Subject: [PATCH] output streaming: cleanup at runmode destruction --- src/output-streaming.c | 11 +++++++++++ src/output-streaming.h | 2 ++ src/runmodes.c | 2 ++ 3 files changed, 15 insertions(+) diff --git a/src/output-streaming.c b/src/output-streaming.c index 41bbae266a..35e40d0c62 100644 --- a/src/output-streaming.c +++ b/src/output-streaming.c @@ -452,3 +452,14 @@ void TmModuleStreamingLoggerRegister (void) { tmm_modules[TMM_STREAMINGLOGGER].ThreadDeinit = OutputStreamingLogThreadDeinit; tmm_modules[TMM_STREAMINGLOGGER].cap_flags = 0; } + +void OutputStreamingShutdown(void) +{ + OutputStreamingLogger *logger = list; + while (logger) { + OutputStreamingLogger *next_logger = logger->next; + SCFree(logger); + logger = next_logger; + } + list = NULL; +} diff --git a/src/output-streaming.h b/src/output-streaming.h index ff924dc002..8b30374228 100644 --- a/src/output-streaming.h +++ b/src/output-streaming.h @@ -50,4 +50,6 @@ int OutputRegisterStreamingLogger(const char *name, StreamingLogger LogFunc, Out void TmModuleStreamingLoggerRegister (void); +void OutputStreamingShutdown(void); + #endif /* __OUTPUT_STREAMING_H__ */ diff --git a/src/runmodes.c b/src/runmodes.c index 76f9022f86..166e627add 100644 --- a/src/runmodes.c +++ b/src/runmodes.c @@ -447,6 +447,7 @@ void RunModeShutDown(void) OutputTxShutdown(); OutputFileShutdown(); OutputFiledataShutdown(); + OutputStreamingShutdown(); OutputStatsShutdown(); /* Close any log files. */ @@ -462,6 +463,7 @@ void RunModeShutDown(void) tx_logger_module = NULL; file_logger_module = NULL; filedata_logger_module = NULL; + streaming_logger_module = NULL; } /** \internal