|
|
|
@ -150,14 +150,15 @@ namespace Jellyfin.Server
|
|
|
|
|
_logger.LogWarning("Failed to enable shared cache for SQLite");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
using (var appHost = new CoreAppHost(
|
|
|
|
|
var appHost = new CoreAppHost(
|
|
|
|
|
appPaths,
|
|
|
|
|
_loggerFactory,
|
|
|
|
|
options,
|
|
|
|
|
new ManagedFileSystem(_loggerFactory.CreateLogger<ManagedFileSystem>(), appPaths),
|
|
|
|
|
new NullImageEncoder(),
|
|
|
|
|
new NetworkManager(_loggerFactory.CreateLogger<NetworkManager>()),
|
|
|
|
|
appConfig))
|
|
|
|
|
appConfig);
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
await appHost.InitAsync(new ServiceCollection()).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
@ -165,15 +166,20 @@ namespace Jellyfin.Server
|
|
|
|
|
|
|
|
|
|
await appHost.RunStartupTasksAsync().ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
// Block main thread until shutdown
|
|
|
|
|
await Task.Delay(-1, _tokenSource.Token).ConfigureAwait(false);
|
|
|
|
|
}
|
|
|
|
|
catch (TaskCanceledException)
|
|
|
|
|
{
|
|
|
|
|
// Don't throw on cancellation
|
|
|
|
|
}
|
|
|
|
|
// Block main thread until shutdown
|
|
|
|
|
await Task.Delay(-1, _tokenSource.Token).ConfigureAwait(false);
|
|
|
|
|
}
|
|
|
|
|
catch (TaskCanceledException)
|
|
|
|
|
{
|
|
|
|
|
// Don't throw on cancellation
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
_logger.LogCritical(ex, "Error while starting server.");
|
|
|
|
|
}
|
|
|
|
|
finally
|
|
|
|
|
{
|
|
|
|
|
appHost?.Dispose();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (_restartOnShutdown)
|
|
|
|
|