aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs')
-rw-r--r--MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs19
1 files changed, 12 insertions, 7 deletions
diff --git a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
index 50929e6f3..94cf984d2 100644
--- a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
+++ b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
@@ -316,17 +316,22 @@ namespace MediaBrowser.Api.Playback.Progressive
CancellationToken = cancellationTokenSource.Token
};
- var response = await HttpClient.GetResponse(options).ConfigureAwait(false);
-
- responseHeaders["Accept-Ranges"] = "none";
+ if (!string.IsNullOrWhiteSpace(Request.QueryString["Range"]))
+ {
+ options.RequestHeaders["Range"] = Request.QueryString["Range"];
+ }
- var length = response.Headers["Content-Length"];
+ var response = await HttpClient.GetResponse(options).ConfigureAwait(false);
- if (!string.IsNullOrEmpty(length))
+ foreach (var name in new[] { "Content-Length", "Content-Range", "Accept-Ranges" })
{
- responseHeaders["Content-Length"] = length;
+ var val = response.Headers[name];
+ if (!string.IsNullOrWhiteSpace(val))
+ {
+ responseHeaders[name] = val;
+ }
}
-
+
if (isHeadRequest)
{
using (response.Content)