@ -152,7 +152,18 @@ namespace MediaBrowser.Server.Implementations.Sync
try
try
{
{
await SendFile ( provider , internalSyncJobItem . OutputPath , localItem , target , cancellationToken ) . ConfigureAwait ( false ) ;
var sendFileResult = await SendFile ( provider , internalSyncJobItem . OutputPath , localItem , target , cancellationToken ) . ConfigureAwait ( false ) ;
if ( localItem . Item . MediaSources ! = null )
{
var mediaSource = localItem . Item . MediaSources . FirstOrDefault ( ) ;
if ( mediaSource ! = null )
{
mediaSource . Path = sendFileResult . Path ;
mediaSource . Protocol = sendFileResult . Protocol ;
mediaSource . SupportsTranscoding = false ;
}
}
// Create db record
// Create db record
await dataProvider . AddOrUpdate ( target , localItem ) . ConfigureAwait ( false ) ;
await dataProvider . AddOrUpdate ( target , localItem ) . ConfigureAwait ( false ) ;
@ -203,11 +214,11 @@ namespace MediaBrowser.Server.Implementations.Sync
}
}
}
}
private async Task SendFile ( IServerSyncProvider provider , string inputPath , LocalItem item , SyncTarget target , CancellationToken cancellationToken )
private async Task < SendFileResult > SendFile ( IServerSyncProvider provider , string inputPath , LocalItem item , SyncTarget target , CancellationToken cancellationToken )
{
{
using ( var stream = _fileSystem . GetFileStream ( inputPath , FileMode . Open , FileAccess . Read , FileShare . Read , true ) )
using ( var stream = _fileSystem . GetFileStream ( inputPath , FileMode . Open , FileAccess . Read , FileShare . Read , true ) )
{
{
await provider . SendFile ( stream , item . LocalPath , target , new Progress < double > ( ) , cancellationToken ) . ConfigureAwait ( false ) ;
return await provider . SendFile ( stream , item . LocalPath , target , new Progress < double > ( ) , cancellationToken ) . ConfigureAwait ( false ) ;
}
}
}
}