http: prevent the Range header being sent when seekability probing isnt used

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Duncan Salerno 2012-10-02 22:22:44 +01:00 committed by Michael Niedermayer
parent dd1e6b2a13
commit 8a33210d1b
1 changed files with 2 additions and 2 deletions

View File

@ -419,10 +419,10 @@ static int http_connect(URLContext *h, const char *path, const char *local_path,
if (!has_header(s->headers, "\r\nAccept: "))
len += av_strlcpy(headers + len, "Accept: */*\r\n",
sizeof(headers) - len);
// Note: we send this on purpose even when s->off is 0,
// Note: we send this on purpose even when s->off is 0 when we're probing,
// since it allows us to detect more reliably if a (non-conforming)
// server supports seeking by analysing the reply headers.
if (!has_header(s->headers, "\r\nRange: ") && !post)
if (!has_header(s->headers, "\r\nRange: ") && !post && (s->off > 0 || s->seekable == -1))
len += av_strlcatf(headers + len, sizeof(headers) - len,
"Range: bytes=%"PRId64"-\r\n", s->off);