summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/pulsecore/time-smoother.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/pulsecore/time-smoother.c b/src/pulsecore/time-smoother.c
index 6bda3df0..4cebded4 100644
--- a/src/pulsecore/time-smoother.c
+++ b/src/pulsecore/time-smoother.c
@@ -310,8 +310,9 @@ void pa_smoother_put(pa_smoother *s, pa_usec_t x, pa_usec_t y) {
/* Fix up x value */
if (s->paused)
x = s->pause_time;
- else
- x -= s->time_offset;
+
+ pa_assert(x >= s->time_offset);
+ x -= s->time_offset;
pa_assert(x >= s->ex);
@@ -342,8 +343,9 @@ pa_usec_t pa_smoother_get(pa_smoother *s, pa_usec_t x) {
/* Fix up x value */
if (s->paused)
x = s->pause_time;
- else
- x -= s->time_offset;
+
+ pa_assert(x >= s->time_offset);
+ x -= s->time_offset;
pa_assert(x >= s->ex);
@@ -373,6 +375,8 @@ void pa_smoother_resume(pa_smoother *s, pa_usec_t x) {
if (!s->paused)
return;
+ pa_assert(x >= s->pause_time);
+
s->paused = FALSE;
s->time_offset += x - s->pause_time;
}