diff options
| author | Luke <luke.pulverenti@gmail.com> | 2015-04-14 00:43:41 -0400 |
|---|---|---|
| committer | Luke <luke.pulverenti@gmail.com> | 2015-04-14 00:43:41 -0400 |
| commit | 935de313d58c7a7ba792345c16cfd1c1aad09a78 (patch) | |
| tree | 2e9334986de5864b00d4901f031b5de6a970305e /MediaBrowser.Common.Implementations | |
| parent | 71a4f2761e784513ae2f3dda03aa549903808ebb (diff) | |
| parent | bd253399c2f1913c544c93fd6927dee37f8add2f (diff) | |
Merge pull request #1079 from MediaBrowser/dev
3.0.5582.0
Diffstat (limited to 'MediaBrowser.Common.Implementations')
3 files changed, 22 insertions, 20 deletions
diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs index bc1b0e7855..70ed5c3191 100644 --- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs +++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs @@ -102,12 +102,6 @@ namespace MediaBrowser.Common.Implementations public List<string> FailedAssemblies { get; protected set; } /// <summary> - /// Gets all types within all running assemblies - /// </summary> - /// <value>All types.</value> - public Type[] AllTypes { get; protected set; } - - /// <summary> /// Gets all concrete types. /// </summary> /// <value>All concrete types.</value> @@ -438,9 +432,10 @@ namespace MediaBrowser.Common.Implementations Logger.Info("Loading {0}", assembly.FullName); } - AllTypes = assemblies.SelectMany(GetTypes).ToArray(); - - AllConcreteTypes = AllTypes.Where(t => t.IsClass && !t.IsAbstract && !t.IsInterface && !t.IsGenericType).ToArray(); + AllConcreteTypes = assemblies + .SelectMany(GetTypes) + .Where(t => t.IsClass && !t.IsAbstract && !t.IsInterface && !t.IsGenericType) + .ToArray(); } /// <summary> diff --git a/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs b/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs index 1762ed5754..0fd4e27874 100644 --- a/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs +++ b/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs @@ -172,11 +172,11 @@ namespace MediaBrowser.Common.Implementations.Networking Uri uri; if (Uri.TryCreate(endpoint, UriKind.RelativeOrAbsolute, out uri)) { - var host = uri.DnsSafeHost; - Logger.Debug("Resolving host {0}", host); - try { + var host = uri.DnsSafeHost; + Logger.Debug("Resolving host {0}", host); + address = GetIpAddresses(host).FirstOrDefault(); if (address != null) @@ -186,9 +186,13 @@ namespace MediaBrowser.Common.Implementations.Networking return IsInLocalNetworkInternal(address.ToString(), false); } } + catch (InvalidOperationException) + { + // Can happen with reverse proxy or IIS url rewriting + } catch (Exception ex) { - Logger.ErrorException("Error resovling hostname {0}", ex, host); + Logger.ErrorException("Error resovling hostname", ex); } } } diff --git a/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs b/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs index 78dcea493e..c2551731fb 100644 --- a/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs +++ b/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs @@ -121,12 +121,12 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks { if (_lastExecutionResult == null) { + var path = GetHistoryFilePath(); + lock (_lastExecutionResultSyncLock) { if (_lastExecutionResult == null) { - var path = GetHistoryFilePath(); - try { return JsonSerializer.DeserializeFromFile<TaskResult>(path); @@ -152,6 +152,14 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks private set { _lastExecutionResult = value; + + var path = GetHistoryFilePath(); + Directory.CreateDirectory(Path.GetDirectoryName(path)); + + lock (_lastExecutionResultSyncLock) + { + JsonSerializer.SerializeToFile(value, path); + } } } @@ -582,11 +590,6 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks result.LongErrorMessage = ex.StackTrace; } - var path = GetHistoryFilePath(); - Directory.CreateDirectory(Path.GetDirectoryName(path)); - - JsonSerializer.SerializeToFile(result, path); - LastExecutionResult = result; ((TaskManager)TaskManager).OnTaskCompleted(this, result); |
