aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Dlna/DlnaServerService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-06 14:55:01 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-10-06 14:55:01 -0400
commita69ca6c55bb7183d247c2c3b25203dbed99fd5d9 (patch)
tree32c7f5589fc31d862f978ea46fbbd4c6e96650fe /MediaBrowser.Api/Dlna/DlnaServerService.cs
parent83606d82d57604f9796455640d2e93367783f69e (diff)
avoid buffering http responses
Diffstat (limited to 'MediaBrowser.Api/Dlna/DlnaServerService.cs')
-rw-r--r--MediaBrowser.Api/Dlna/DlnaServerService.cs8
1 files changed, 6 insertions, 2 deletions
diff --git a/MediaBrowser.Api/Dlna/DlnaServerService.cs b/MediaBrowser.Api/Dlna/DlnaServerService.cs
index 4e7b1a7d5..b2c7e5532 100644
--- a/MediaBrowser.Api/Dlna/DlnaServerService.cs
+++ b/MediaBrowser.Api/Dlna/DlnaServerService.cs
@@ -7,6 +7,8 @@ using System.Globalization;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
namespace MediaBrowser.Api.Dlna
{
@@ -109,13 +111,15 @@ namespace MediaBrowser.Api.Dlna
private readonly IMediaReceiverRegistrar _mediaReceiverRegistrar;
private const string XMLContentType = "text/xml; charset=UTF-8";
+ private readonly IMemoryStreamProvider _memoryStreamProvider;
- public DlnaServerService(IDlnaManager dlnaManager, IContentDirectory contentDirectory, IConnectionManager connectionManager, IMediaReceiverRegistrar mediaReceiverRegistrar)
+ public DlnaServerService(IDlnaManager dlnaManager, IContentDirectory contentDirectory, IConnectionManager connectionManager, IMediaReceiverRegistrar mediaReceiverRegistrar, IMemoryStreamProvider memoryStreamProvider)
{
_dlnaManager = dlnaManager;
_contentDirectory = contentDirectory;
_connectionManager = connectionManager;
_mediaReceiverRegistrar = mediaReceiverRegistrar;
+ _memoryStreamProvider = memoryStreamProvider;
}
public object Get(GetDescriptionXml request)
@@ -201,7 +205,7 @@ namespace MediaBrowser.Api.Dlna
{
using (var response = _dlnaManager.GetIcon(request.Filename))
{
- using (var ms = new MemoryStream())
+ using (var ms = _memoryStreamProvider.CreateNew())
{
response.Stream.CopyTo(ms);