summaryrefslogtreecommitdiffstats
path: root/src/pulsecore
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2008-06-17 20:07:51 +0000
committerLennart Poettering <lennart@poettering.net>2008-06-17 20:07:51 +0000
commit038a033c78c60a03b8c984ffc32f9efc324fba16 (patch)
tree8fa72c11dd08020b1fcf077081e2cfe5a3d0ef7a /src/pulsecore
parentb28c6e98903264798f1bf839b22f73229fe14370 (diff)
limit the prebuf value by tlength
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2547 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/pulsecore')
-rw-r--r--src/pulsecore/memblockq.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/pulsecore/memblockq.c b/src/pulsecore/memblockq.c
index e058765a..9156fc0a 100644
--- a/src/pulsecore/memblockq.c
+++ b/src/pulsecore/memblockq.c
@@ -786,6 +786,9 @@ void pa_memblockq_set_tlength(pa_memblockq *bq, size_t tlength) {
if (bq->tlength > bq->maxlength)
bq->tlength = bq->maxlength;
+ if (bq->prebuf > bq->tlength)
+ pa_memblockq_set_prebuf(bq, bq->tlength);
+
if (bq->minreq > bq->tlength)
pa_memblockq_set_minreq(bq, bq->tlength);
@@ -803,8 +806,8 @@ void pa_memblockq_set_prebuf(pa_memblockq *bq, size_t prebuf) {
if (prebuf > 0 && bq->prebuf < bq->base)
bq->prebuf = bq->base;
- if (bq->prebuf > bq->maxlength)
- bq->prebuf = bq->maxlength;
+ if (bq->prebuf > bq->tlength)
+ bq->prebuf = bq->tlength;
if (bq->prebuf <= 0 || pa_memblockq_get_length(bq) >= bq->prebuf)
bq->in_prebuf = FALSE;