aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations')
-rw-r--r--MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs27
-rw-r--r--MediaBrowser.Server.Implementations/Connect/ConnectManager.cs5
-rw-r--r--MediaBrowser.Server.Implementations/Library/LibraryManager.cs4
-rw-r--r--MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json8
-rw-r--r--MediaBrowser.Server.Implementations/Localization/Server/server.json2
5 files changed, 30 insertions, 16 deletions
diff --git a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
index 39f747e0a5..f5b5db3fdf 100644
--- a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
+++ b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
@@ -266,21 +266,28 @@ namespace MediaBrowser.Server.Implementations.Channels
private bool IsSizeLimitReached(string path, double gbLimit)
{
- var byteLimit = gbLimit*1000000000;
-
- long total = 0;
-
- foreach (var file in new DirectoryInfo(path).EnumerateFiles("*", SearchOption.AllDirectories))
+ try
{
- total += file.Length;
+ var byteLimit = gbLimit * 1000000000;
- if (total >= byteLimit)
+ long total = 0;
+
+ foreach (var file in new DirectoryInfo(path).EnumerateFiles("*", SearchOption.AllDirectories))
{
- return true;
+ total += file.Length;
+
+ if (total >= byteLimit)
+ {
+ return true;
+ }
}
- }
- return false;
+ return false;
+ }
+ catch (DirectoryNotFoundException)
+ {
+ return false;
+ }
}
private async Task RefreshMediaSourceItems(IEnumerable<MediaSourceInfo> items, CancellationToken cancellationToken)
diff --git a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs
index 0f2d2e3d5c..6479b6f9d2 100644
--- a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs
+++ b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs
@@ -133,9 +133,8 @@ namespace MediaBrowser.Server.Implementations.Connect
}
catch (HttpException ex)
{
- var webEx = (WebException) ex.InnerException;
-
- if (webEx == null || (webEx.Status != WebExceptionStatus.ProtocolError && ((HttpWebResponse)webEx.Response).StatusCode != HttpStatusCode.NotFound))
+ if (!ex.StatusCode.HasValue || ex.StatusCode.Value != HttpStatusCode.NotFound ||
+ ex.StatusCode.Value != HttpStatusCode.Unauthorized)
{
throw;
}
diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
index dc009f4a92..ad5eac0332 100644
--- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
+++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
@@ -845,9 +845,11 @@ namespace MediaBrowser.Server.Implementations.Library
if (isArtist)
{
+ var validFilename = _fileSystem.GetValidFilename(name).Trim();
+
var existing = RootFolder.RecursiveChildren
.OfType<T>()
- .FirstOrDefault(i => string.Equals(i.Name, name, StringComparison.OrdinalIgnoreCase));
+ .FirstOrDefault(i => string.Equals(_fileSystem.GetValidFilename(i.Name).Trim(), validFilename, StringComparison.OrdinalIgnoreCase));
if (existing != null)
{
diff --git a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
index ffe56e3d9c..7cc5c7bccd 100644
--- a/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
+++ b/MediaBrowser.Server.Implementations/Localization/JavaScript/javascript.json
@@ -462,5 +462,11 @@
"ValueDiscNumber": "Disc {0}",
"HeaderUnknownDate": "Unknown Date",
"HeaderUnknownYear": "Unknown Year",
- "ValueMinutes": "{0} min"
+ "ValueMinutes": "{0} min",
+ "ButtonPlayExternalPlayer": "Play with external player",
+ "HeaderSelectExternalPlayer": "Select External Player",
+ "HeaderExternalPlayerPlayback": "External Player Playback",
+ "ButtonImDone": "I'm Done",
+ "OptionMarkWatched": "Mark watched",
+ "OptionMarkWatchedHelp": "Check this if you watched the entire video"
}
diff --git a/MediaBrowser.Server.Implementations/Localization/Server/server.json b/MediaBrowser.Server.Implementations/Localization/Server/server.json
index 2cae45a9d9..04fb29a085 100644
--- a/MediaBrowser.Server.Implementations/Localization/Server/server.json
+++ b/MediaBrowser.Server.Implementations/Localization/Server/server.json
@@ -1166,5 +1166,5 @@
"LabelConnectUserNameHelp": "Connect this user to a Media Browser account to enable easy sign-in access from any app without having to know the server ip address.",
"ButtonLearnMoreAboutMediaBrowserConnect": "Learn more about Media Browser Connect",
"LabelExternalPlayers": "External players:",
- "LabelExternalPlayersHelp": "Display buttons to play content in external players. This is only available on devices that support url schemes, generally Android and iOS."
+ "LabelExternalPlayersHelp": "Display buttons to play content in external players. This is only available on devices that support url schemes, generally Android and iOS. With external players there is generally no support for remote control, resuming, or reporting progress to the server."
}