diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-10 23:12:21 -0400 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-10 23:12:21 -0400 |
| commit | e5592bd220f09a85314cd56fb9c5a287061b9752 (patch) | |
| tree | e605f1640eae5c10b487386b3f816d56a51b369f /MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs | |
| parent | c7d2b3a407940110c3601c9a0d096a5dbc249bb8 (diff) | |
bring back support for byte ranged requests
Diffstat (limited to 'MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs b/MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs index cdb6adbe7..89d1ea72d 100644 --- a/MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs +++ b/MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Extensions; +using System.Net; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.IO; using MediaBrowser.Common.Net; using MediaBrowser.Model.Logging; @@ -257,6 +258,15 @@ namespace MediaBrowser.Server.Implementations.HttpServer var stream = await factoryFn().ConfigureAwait(false); + var httpListenerResponse = (HttpListenerResponse) Response.OriginalResponse; + httpListenerResponse.SendChunked = false; + + if (IsRangeRequest) + { + return new RangeRequestWriter(Request.Headers, httpListenerResponse, stream); + } + + httpListenerResponse.ContentLength64 = stream.Length; return new StreamWriter(stream); } |
