Your ROOT_URL in app.ini is https://git.cloudchain.link/ but you are visiting https://dash.bss.nz/open-source-mirrors/jellyfin/commit/3ce16713dd013b5aabdedebafd025f2224d2475f
You should set ROOT_URL correctly, otherwise the web may not work correctly.
3 changed files with
15 additions and
28 deletions
@ -189,7 +189,7 @@ namespace Emby.Server.Implementations.Session
_logger ) ;
}
private void OnSessionEnded ( SessionInfo info )
private async ValueTask OnSessionEnded ( SessionInfo info )
{
EventHelper . QueueEventIfNotNull (
SessionEnded ,
@ -202,7 +202,7 @@ namespace Emby.Server.Implementations.Session
_eventManager . Publish ( new SessionEndedEventArgs ( info ) ) ;
info . Dispose ( ) ;
await info . Dispose Async ( ) . ConfigureAwait ( false ) ;
}
/// <inheritdoc />
@ -301,12 +301,12 @@ namespace Emby.Server.Implementations.Session
await _mediaSourceManager . CloseLiveStream ( session . PlayState . LiveStreamId ) . ConfigureAwait ( false ) ;
}
OnSessionEnded ( session ) ;
await OnSessionEnded ( session ) . ConfigureAwait ( false ) ;
}
}
/// <inheritdoc />
public void ReportSessionEnded ( string sessionId )
public async ValueTask ReportSessionEnded ( string sessionId )
{
CheckDisposed ( ) ;
var session = GetSession ( sessionId , false ) ;
@ -317,7 +317,7 @@ namespace Emby.Server.Implementations.Session
_activeConnections . TryRemove ( key , out _ ) ;
OnSessionEnded ( session ) ;
await OnSessionEnded ( session ) . ConfigureAwait ( false ) ;
}
}
@ -1590,7 +1590,7 @@ namespace Emby.Server.Implementations.Session
{
try
{
ReportSessionEnded ( session . Id ) ;
await ReportSessionEnded ( session . Id ) . ConfigureAwait ( false ) ;
}
catch ( Exception ex )
{
@ -111,7 +111,8 @@ namespace MediaBrowser.Controller.Session
/// Reports the session ended.
/// </summary>
/// <param name="sessionId">The session identifier.</param>
void ReportSessionEnded ( string sessionId ) ;
/// <returns>Task.</returns>
ValueTask ReportSessionEnded ( string sessionId ) ;
/// <summary>
/// Sends the general command.
@ -19,7 +19,7 @@ namespace MediaBrowser.Controller.Session
/// <summary>
/// Class SessionInfo.
/// </summary>
public sealed class SessionInfo : IAsyncDisposable , IDisposable
public sealed class SessionInfo : IAsyncDisposable
{
// 1 second
private const long ProgressIncrement = 10000000 ;
@ -374,26 +374,6 @@ namespace MediaBrowser.Controller.Session
}
}
/// <inheritdoc />
public void Dispose ( )
{
_disposed = true ;
StopAutomaticProgress ( ) ;
var controllers = SessionControllers . ToList ( ) ;
SessionControllers = Array . Empty < ISessionController > ( ) ;
foreach ( var controller in controllers )
{
if ( controller is IDisposable disposable )
{
_logger . LogDebug ( "Disposing session controller synchronously {TypeName}" , disposable . GetType ( ) . Name ) ;
disposable . Dispose ( ) ;
}
}
}
public async ValueTask DisposeAsync ( )
{
_disposed = true ;
@ -401,6 +381,7 @@ namespace MediaBrowser.Controller.Session
StopAutomaticProgress ( ) ;
var controllers = SessionControllers . ToList ( ) ;
SessionControllers = Array . Empty < ISessionController > ( ) ;
foreach ( var controller in controllers )
{
@ -409,6 +390,11 @@ namespace MediaBrowser.Controller.Session
_logger . LogDebug ( "Disposing session controller asynchronously {TypeName}" , disposableAsync . GetType ( ) . Name ) ;
await disposableAsync . DisposeAsync ( ) . ConfigureAwait ( false ) ;
}
else if ( controller is IDisposable disposable )
{
_logger . LogDebug ( "Disposing session controller synchronously {TypeName}" , disposable . GetType ( ) . Name ) ;
disposable . Dispose ( ) ;
}
}
}
}