]> code.delx.au - pulseaudio/blobdiff - src/pulsecore/ratelimit.h
core-util: ensure that we chmod only the dir we ourselves created
[pulseaudio] / src / pulsecore / ratelimit.h
index e652c5208274e354ac80ee094e79ba80aadeb509..9857a291bf2600853a54820be2d8fd58dc280004 100644 (file)
@@ -8,7 +8,7 @@
 
   PulseAudio is free software; you can redistribute it and/or modify
   it under the terms of the GNU Lesser General Public License as
-  published by the Free Software Foundation; either version 2 of the
+  published by the Free Software Foundation; either version 2.1 of the
   License, or (at your option) any later version.
 
   PulseAudio is distributed in the hope that it will be useful, but
 #include <pulsecore/macro.h>
 
 typedef struct pa_ratelimit {
-    const pa_usec_t interval;
-    const unsigned burst;
+    pa_usec_t interval;
+    unsigned burst;
     unsigned n_printed, n_missed;
     pa_usec_t begin;
 } pa_ratelimit;
 
 #define PA_DEFINE_RATELIMIT(_name, _interval, _burst)   \
     pa_ratelimit _name = {                              \
-        .interval = _interval,                          \
-        .burst = _burst,                                \
+        .interval = (_interval),                        \
+        .burst = (_burst),                              \
         .n_printed = 0,                                 \
         .n_missed = 0,                                  \
         .begin = 0                                      \
     }
 
+#define PA_INIT_RATELIMIT(v, _interval, _burst)         \
+    do {                                                \
+        pa_ratelimit *r = &(v);                         \
+        r->interval = (_interval);                      \
+        r->burst = (_burst);                            \
+        r->n_printed = 0;                               \
+        r->n_missed = 0;                                \
+        r->begin = 0;                                   \
+    } while (FALSE);
+
 pa_bool_t pa_ratelimit_test(pa_ratelimit *r);
 
 #endif