aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Api/ItemUpdateService.cs2
-rw-r--r--MediaBrowser.Common.Implementations/BaseApplicationHost.cs9
-rw-r--r--MediaBrowser.Common.Implementations/IO/MemoryStreamProvider.cs27
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs2
-rw-r--r--MediaBrowser.Model/LiveTv/RecordingStatus.cs1
-rw-r--r--MediaBrowser.Server.Implementations/HttpServer/HttpListenerHost.cs2
-rw-r--r--MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs27
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs1
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs2
-rw-r--r--MediaBrowser.Server.Startup.Common/ApplicationHost.cs2
10 files changed, 52 insertions, 23 deletions
diff --git a/MediaBrowser.Api/ItemUpdateService.cs b/MediaBrowser.Api/ItemUpdateService.cs
index 687a21a46..16e8a434a 100644
--- a/MediaBrowser.Api/ItemUpdateService.cs
+++ b/MediaBrowser.Api/ItemUpdateService.cs
@@ -81,7 +81,7 @@ namespace MediaBrowser.Api
info.ContentTypeOptions = GetContentTypeOptions(true);
info.ContentType = configuredContentType;
- if (string.Equals(inheritedContentType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase))
+ if (string.IsNullOrWhiteSpace(inheritedContentType) || string.Equals(inheritedContentType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase))
{
info.ContentTypeOptions = info.ContentTypeOptions
.Where(i => string.IsNullOrWhiteSpace(i.Value) || string.Equals(i.Value, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase))
diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
index 4099c9c56..e68fee829 100644
--- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
+++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs
@@ -234,7 +234,14 @@ namespace MediaBrowser.Common.Implementations
JsonSerializer = CreateJsonSerializer();
- MemoryStreamProvider = new MemoryStreamProvider();
+ if (Environment.OSVersion.Platform == PlatformID.Win32NT)
+ {
+ MemoryStreamProvider = new RecyclableMemoryStreamProvider();
+ }
+ else
+ {
+ MemoryStreamProvider = new MemoryStreamProvider();
+ }
OnLoggerLoaded(true);
LogManager.LoggerLoaded += (s, e) => OnLoggerLoaded(false);
diff --git a/MediaBrowser.Common.Implementations/IO/MemoryStreamProvider.cs b/MediaBrowser.Common.Implementations/IO/MemoryStreamProvider.cs
index 364055283..c42947481 100644
--- a/MediaBrowser.Common.Implementations/IO/MemoryStreamProvider.cs
+++ b/MediaBrowser.Common.Implementations/IO/MemoryStreamProvider.cs
@@ -1,15 +1,10 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
+using System.IO;
using MediaBrowser.Common.IO;
using Microsoft.IO;
namespace MediaBrowser.Common.Implementations.IO
{
- public class MemoryStreamProvider : IMemoryStreamProvider
+ public class RecyclableMemoryStreamProvider : IMemoryStreamProvider
{
readonly RecyclableMemoryStreamManager _manager = new RecyclableMemoryStreamManager();
@@ -28,4 +23,22 @@ namespace MediaBrowser.Common.Implementations.IO
return _manager.GetStream("RecyclableMemoryStream", buffer, 0, buffer.Length);
}
}
+
+ public class MemoryStreamProvider : IMemoryStreamProvider
+ {
+ public MemoryStream CreateNew()
+ {
+ return new MemoryStream();
+ }
+
+ public MemoryStream CreateNew(int capacity)
+ {
+ return new MemoryStream(capacity);
+ }
+
+ public MemoryStream CreateNew(byte[] buffer)
+ {
+ return new MemoryStream(buffer);
+ }
+ }
}
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 1e466ec08..cc71ab43e 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -1068,7 +1068,7 @@ namespace MediaBrowser.Controller.Entities
{
var result = new Dictionary<Guid, BaseItem>();
- AddChildrenToList(result, true, true, filter);
+ AddChildrenToList(result, includeLinkedChildren, true, filter);
return result.Values.ToList();
}
diff --git a/MediaBrowser.Model/LiveTv/RecordingStatus.cs b/MediaBrowser.Model/LiveTv/RecordingStatus.cs
index 571ff9c99..496e6f421 100644
--- a/MediaBrowser.Model/LiveTv/RecordingStatus.cs
+++ b/MediaBrowser.Model/LiveTv/RecordingStatus.cs
@@ -4,7 +4,6 @@ namespace MediaBrowser.Model.LiveTv
public enum RecordingStatus
{
New,
- Scheduled,
InProgress,
Completed,
Cancelled,
diff --git a/MediaBrowser.Server.Implementations/HttpServer/HttpListenerHost.cs b/MediaBrowser.Server.Implementations/HttpServer/HttpListenerHost.cs
index 9ec671908..b3d3ec13c 100644
--- a/MediaBrowser.Server.Implementations/HttpServer/HttpListenerHost.cs
+++ b/MediaBrowser.Server.Implementations/HttpServer/HttpListenerHost.cs
@@ -100,7 +100,7 @@ namespace MediaBrowser.Server.Implementations.HttpServer
container.Adapter = _containerAdapter;
Plugins.RemoveAll(x => x is NativeTypesFeature);
- //Plugins.Add(new SwaggerFeature());
+ Plugins.Add(new SwaggerFeature());
Plugins.Add(new CorsFeature(allowedHeaders: "Content-Type, Authorization, Range, X-MediaBrowser-Token, X-Emby-Authorization"));
//Plugins.Add(new AuthFeature(() => new AuthUserSession(), new IAuthProvider[] {
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
index c82825007..1e480e265 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
+++ b/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
@@ -59,18 +59,18 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
return null;
}
- if (args.ContainsFileSystemEntryByName("tvshow.nfo"))
- {
- return new Series
- {
- Path = args.Path,
- Name = Path.GetFileName(args.Path)
- };
- }
-
var collectionType = args.GetCollectionType();
if (string.Equals(collectionType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase))
{
+ //if (args.ContainsFileSystemEntryByName("tvshow.nfo"))
+ //{
+ // return new Series
+ // {
+ // Path = args.Path,
+ // Name = Path.GetFileName(args.Path)
+ // };
+ //}
+
var configuredContentType = _libraryManager.GetConfiguredContentType(args.Path);
if (!string.Equals(configuredContentType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase))
{
@@ -83,6 +83,15 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
}
else if (string.IsNullOrWhiteSpace(collectionType))
{
+ if (args.ContainsFileSystemEntryByName("tvshow.nfo"))
+ {
+ return new Series
+ {
+ Path = args.Path,
+ Name = Path.GetFileName(args.Path)
+ };
+ }
+
if (args.Parent.IsRoot)
{
return null;
diff --git a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
index 136a9e195..86d77982c 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
@@ -761,6 +761,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
{
defaults.SeriesId = program.SeriesId;
defaults.ProgramId = program.Id;
+ defaults.RecordNewOnly = !program.IsRepeat;
}
defaults.SkipEpisodesInLibrary = true;
diff --git a/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs b/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
index 8095a6989..c07c448db 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
@@ -112,8 +112,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts
}
channel.ImageUrl = FindProperty("tvg-logo", extInf, null);
- channel.Number = FindProperty("tvg-id", extInf, channel.Number);
channel.Number = FindProperty("channel-id", extInf, channel.Number);
+ channel.Number = FindProperty("tvg-id", extInf, channel.Number);
channel.Name = FindProperty("tvg-name", extInf, channel.Name);
channel.Name = FindProperty("tvg-id", extInf, channel.Name);
return channel;
diff --git a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
index 5439b1b81..6e188fae8 100644
--- a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
+++ b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
@@ -1309,7 +1309,7 @@ namespace MediaBrowser.Server.Startup.Common
EncoderLocationType = MediaEncoder.EncoderLocationType,
SystemArchitecture = NativeApp.Environment.SystemArchitecture,
SystemUpdateLevel = ConfigurationManager.CommonConfiguration.SystemUpdateLevel,
- PackageName = _startupOptions.GetOption("package")
+ PackageName = _startupOptions.GetOption("-package")
};
}