output/httpd: fix throttling bug after resuming playback
Reset the timer when paused and no client is connected. This fixes Mantis ticket 0003527.
This commit is contained in:
parent
31b380b266
commit
302972e9fc
1
NEWS
1
NEWS
@ -3,6 +3,7 @@ ver 0.17.2 (2012/??/??)
|
|||||||
- fix crash in local file check
|
- fix crash in local file check
|
||||||
* output:
|
* output:
|
||||||
- httpd: use monotonic clock, avoid hiccups after system clock adjustment
|
- httpd: use monotonic clock, avoid hiccups after system clock adjustment
|
||||||
|
- httpd: fix throttling bug after resuming playback
|
||||||
* mapper: fix non-UTF8 music directory name
|
* mapper: fix non-UTF8 music directory name
|
||||||
|
|
||||||
|
|
||||||
|
@ -422,6 +422,14 @@ httpd_output_delay(struct audio_output *ao)
|
|||||||
{
|
{
|
||||||
struct httpd_output *httpd = (struct httpd_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
|
return httpd->timer->started
|
||||||
? timer_delay(httpd->timer)
|
? timer_delay(httpd->timer)
|
||||||
: 0;
|
: 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user