]> code.delx.au - pulseaudio/commitdiff
add pa_log_rate_limit()
authorLennart Poettering <lennart@poettering.net>
Fri, 23 Jan 2009 22:58:57 +0000 (23:58 +0100)
committerLennart Poettering <lennart@poettering.net>
Fri, 23 Jan 2009 22:58:57 +0000 (23:58 +0100)
src/pulsecore/log.c
src/pulsecore/log.h

index adf2f112843b307d71d099590422d3f5366520ca..9a7f7cac1aa4ecc8cdc5ed4391e7f4a9047e144d 100644 (file)
@@ -47,6 +47,7 @@
 #include <pulsecore/core-util.h>
 #include <pulsecore/rtclock.h>
 #include <pulsecore/once.h>
+#include <pulsecore/ratelimit.h>
 
 #include "log.h"
 
@@ -375,3 +376,10 @@ void pa_log_level(pa_log_level_t level, const char *format, ...) {
     pa_log_levelv_meta(level, NULL, 0, NULL, format, ap);
     va_end(ap);
 }
+
+pa_bool_t pa_log_ratelimit(void) {
+    /* Not more than 10 messages every 5s */
+    static PA_DEFINE_RATELIMIT(ratelimit, 5 * PA_USEC_PER_SEC, 10);
+
+    return pa_ratelimit_test(&ratelimit);
+}
index 3d66e903e9e232642dd5349db2286f0f13aad156..77adb791d6d3c15480e0c369b4a0955c8ed41315 100644 (file)
@@ -109,4 +109,6 @@ LOG_FUNC(error, PA_LOG_ERROR)
 
 #define pa_log pa_log_error
 
+pa_bool_t pa_log_ratelimit(void);
+
 #endif