aboutsummaryrefslogtreecommitdiffstats
path: root/src/input
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2014-11-10 08:45:19 +0100
committerMax Kellermann <max@duempel.org>2014-11-10 08:45:19 +0100
commitff6f1655f0441f2fa8a1947bf242ea2cce6ba7a7 (patch)
treea4d50b8cd1e869b36e792c696e8a634252702596 /src/input
parentb5ba94f1de06c621da937241eedfcfb100f26a09 (diff)
downloadmpd-ff6f1655f0441f2fa8a1947bf242ea2cce6ba7a7.tar.gz
mpd-ff6f1655f0441f2fa8a1947bf242ea2cce6ba7a7.tar.xz
mpd-ff6f1655f0441f2fa8a1947bf242ea2cce6ba7a7.zip
input/curl: ignore ResponseBoundary() while seeking
While seeking, metadata must not be updated. ResponseBoundary() was added in MPD 0.19.1, but I forgot to add the IsSeeking() check there. This caused the "seekable" flag to reset.
Diffstat (limited to 'src/input')
-rw-r--r--src/input/plugins/CurlInputPlugin.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/input/plugins/CurlInputPlugin.cxx b/src/input/plugins/CurlInputPlugin.cxx
index 1e1a46108..abb7e312c 100644
--- a/src/input/plugins/CurlInputPlugin.cxx
+++ b/src/input/plugins/CurlInputPlugin.cxx
@@ -610,6 +610,10 @@ CurlInputStream::ResponseBoundary()
/* undo all effects of HeaderReceived() because the previous
response was not applicable for this stream */
+ if (IsSeekPending())
+ /* don't update metadata while seeking */
+ return;
+
seekable = false;
size = UNKNOWN_SIZE;
ClearMimeType();