aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--src/output/httpd_output_plugin.c8
2 files changed, 9 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 9b72f6ba0..27817a275 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ ver 0.17.2 (2012/??/??)
- fix crash in local file check
* output:
- httpd: use monotonic clock, avoid hiccups after system clock adjustment
+ - httpd: fix throttling bug after resuming playback
* mapper: fix non-UTF8 music directory name
diff --git a/src/output/httpd_output_plugin.c b/src/output/httpd_output_plugin.c
index f7c6127c8..a063479db 100644
--- a/src/output/httpd_output_plugin.c
+++ b/src/output/httpd_output_plugin.c
@@ -422,6 +422,14 @@ httpd_output_delay(struct audio_output *ao)
{
struct httpd_output *httpd = (struct httpd_output *)ao;
+ if (!httpd_output_lock_has_clients(httpd) && httpd->base.pause) {
+ /* if there's no client and this output is paused,
+ then httpd_output_pause() will not do anything, it
+ will not fill the buffer and it will not update the
+ timer; therefore, we reset the timer here */
+ timer_reset(httpd->timer);
+ }
+
return httpd->timer->started
? timer_delay(httpd->timer)
: 0;