Merge pull request #646 from Tthecreator/master

Fix infinite loop bug on subtitle.m3u8 request
This commit is contained in:
Andrew Rabert 2019-01-20 21:16:28 -05:00 committed by GitHub
commit 920c39454c
2 changed files with 9 additions and 3 deletions

View file

@ -11,6 +11,7 @@
- [AnthonyLavado](https://github.com/anthonylavado) - [AnthonyLavado](https://github.com/anthonylavado)
- [sparky8251](https://github.com/sparky8251) - [sparky8251](https://github.com/sparky8251)
- [LeoVerto](https://github.com/LeoVerto) - [LeoVerto](https://github.com/LeoVerto)
- [TtheCreator](https://github.com/Tthecreator)
# Emby Contributors # Emby Contributors

View file

@ -1,4 +1,4 @@
using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.MediaEncoding;
using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Net;
@ -156,14 +156,19 @@ namespace MediaBrowser.Api.Subtitles
throw new ArgumentException("HLS Subtitles are not supported for this media."); throw new ArgumentException("HLS Subtitles are not supported for this media.");
} }
var segmentLengthTicks = TimeSpan.FromSeconds(request.SegmentLength).Ticks;
if (segmentLengthTicks <= 0)
{
throw new ArgumentException("segmentLength was not given, or it was given incorrectly. (It should be bigger than 0)");
}
builder.AppendLine("#EXTM3U"); builder.AppendLine("#EXTM3U");
builder.AppendLine("#EXT-X-TARGETDURATION:" + request.SegmentLength.ToString(CultureInfo.InvariantCulture)); builder.AppendLine("#EXT-X-TARGETDURATION:" + request.SegmentLength.ToString(CultureInfo.InvariantCulture));
builder.AppendLine("#EXT-X-VERSION:3"); builder.AppendLine("#EXT-X-VERSION:3");
builder.AppendLine("#EXT-X-MEDIA-SEQUENCE:0"); builder.AppendLine("#EXT-X-MEDIA-SEQUENCE:0");
builder.AppendLine("#EXT-X-PLAYLIST-TYPE:VOD"); builder.AppendLine("#EXT-X-PLAYLIST-TYPE:VOD");
long positionTicks = 0; long positionTicks = 0;
var segmentLengthTicks = TimeSpan.FromSeconds(request.SegmentLength).Ticks;
var accessToken = _authContext.GetAuthorizationInfo(Request).Token; var accessToken = _authContext.GetAuthorizationInfo(Request).Token;