mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-17 11:43:44 +01:00
restored audio
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using MediaBrowser.Common.Kernel;
|
||||
using MediaBrowser.Common.Kernel;
|
||||
using MediaBrowser.Model.Logging;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
using SimpleInjector;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Threading;
|
||||
|
||||
namespace MediaBrowser.Common.Implementations
|
||||
{
|
||||
public abstract class BaseApplicationHost : IDisposable
|
||||
public abstract class BaseApplicationHost
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the logger.
|
||||
@@ -314,18 +314,22 @@ namespace MediaBrowser.Common.Implementations
|
||||
/// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
|
||||
protected virtual void Dispose(bool dispose)
|
||||
{
|
||||
var type = GetType();
|
||||
|
||||
Logger.Info("Disposing " + type.Name);
|
||||
|
||||
foreach (var part in DisposableParts.Distinct().Where(i => i.GetType() != type).ToList())
|
||||
if (dispose)
|
||||
{
|
||||
Logger.Info("Disposing " + part.GetType().Name);
|
||||
var type = GetType();
|
||||
|
||||
part.Dispose();
|
||||
Logger.Info("Disposing " + type.Name);
|
||||
|
||||
var parts = DisposableParts.Distinct().Where(i => i.GetType() != type).ToList();
|
||||
DisposableParts.Clear();
|
||||
|
||||
foreach (var part in parts)
|
||||
{
|
||||
Logger.Info("Disposing " + part.GetType().Name);
|
||||
|
||||
part.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
DisposableParts.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -518,7 +518,7 @@ namespace MediaBrowser.Common.Implementations.HttpServer
|
||||
/// <summary>
|
||||
/// Class ContainerAdapter
|
||||
/// </summary>
|
||||
class ContainerAdapter : IContainerAdapter
|
||||
class ContainerAdapter : IContainerAdapter, IRelease
|
||||
{
|
||||
/// <summary>
|
||||
/// The _app host
|
||||
@@ -552,5 +552,14 @@ namespace MediaBrowser.Common.Implementations.HttpServer
|
||||
{
|
||||
return _appHost.TryResolve<T>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Releases the specified instance.
|
||||
/// </summary>
|
||||
/// <param name="instance">The instance.</param>
|
||||
public void Release(object instance)
|
||||
{
|
||||
// Leave this empty so SS doesn't try to dispose our objects
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -71,6 +71,8 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks
|
||||
JsonSerializer = jsonSerializer;
|
||||
Logger = logger;
|
||||
ServerManager = serverManager;
|
||||
|
||||
ReloadTriggerEvents(true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -411,8 +411,6 @@ namespace MediaBrowser.Common.Implementations.ServerManager
|
||||
|
||||
if (HttpServer != null)
|
||||
{
|
||||
_logger.Info("Disposing Http Server");
|
||||
|
||||
HttpServer.WebSocketConnected -= HttpServer_WebSocketConnected;
|
||||
HttpServer.Dispose();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user