aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-03-10 23:12:21 -0400
committerLukePulverenti <luke.pulverenti@gmail.com>2013-03-10 23:12:21 -0400
commite5592bd220f09a85314cd56fb9c5a287061b9752 (patch)
treee605f1640eae5c10b487386b3f816d56a51b369f /MediaBrowser.Server.Implementations/HttpServer/BaseRestService.cs
parentc7d2b3a407940110c3601c9a0d096a5dbc249bb8 (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.cs12
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);
}