aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-07-27 18:01:29 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-07-27 18:01:29 -0400
commit063675bb07f78f99738a3ada061f3e2c16c9cda0 (patch)
treef544ea1e036d7de72fa4a62114e82666f31e2868 /MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
parent37c27a26e90b7eff62cec9e2b6a6c003e79fcbe4 (diff)
updated nuget
Diffstat (limited to 'MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs')
-rw-r--r--MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs14
1 files changed, 11 insertions, 3 deletions
diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
index 5e49fbf7a..fc1c627e9 100644
--- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
+++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
@@ -269,10 +269,18 @@ namespace MediaBrowser.Api.Playback.Hls
var segmentFilename = Path.GetFileName(segmentPath);
- // If it appears in the playlist, it's done
- if (File.ReadAllText(playlistPath).IndexOf(segmentFilename, StringComparison.OrdinalIgnoreCase) != -1)
+ using (var fileStream = FileSystem.GetFileStream(playlistPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite, true))
{
- return ResultFactory.GetStaticFileResult(Request, segmentPath, FileShare.ReadWrite);
+ using (var reader = new StreamReader(fileStream))
+ {
+ var text = await reader.ReadToEndAsync().ConfigureAwait(false);
+
+ // If it appears in the playlist, it's done
+ if (text.IndexOf(segmentFilename, StringComparison.OrdinalIgnoreCase) != -1)
+ {
+ return ResultFactory.GetStaticFileResult(Request, segmentPath, FileShare.ReadWrite);
+ }
+ }
}
// if a different file is encoding, it's done