@ -439,7 +439,6 @@ namespace MediaBrowser.Common.Implementations.Updates
finally
{
// Dispose the progress object and remove the installation from the in-progress list
innerProgress . Dispose ( ) ;
tuple . Item2 . Dispose ( ) ;
}
@ -457,8 +456,10 @@ namespace MediaBrowser.Common.Implementations.Updates
// Do the install
await PerformPackageInstallation ( progress , package , cancellationToken ) . ConfigureAwait ( false ) ;
var extension = Path . GetExtension ( package . targetFilename ) ? ? "" ;
// Do plugin-specific processing
if ( ! ( Path . GetExtension ( package . targetFilename ) ? ? "" ) . Equals ( ".zip" , StringComparison . OrdinalIgnoreCase ) )
if ( ! string . Equals ( extension , ".zip" , StringComparison . OrdinalIgnoreCase ) & & ! string . Equals ( extension , ".rar" , StringComparison . OrdinalIgnoreCase ) & & ! string . Equals ( extension , ".7z ", StringComparison . OrdinalIgnoreCase ) )
{
// Set last update time if we were installed before
var plugin = _applicationHost . Plugins . FirstOrDefault ( p = > p . Name . Equals ( package . name , StringComparison . OrdinalIgnoreCase ) ) ;
@ -471,7 +472,6 @@ namespace MediaBrowser.Common.Implementations.Updates
{
OnPluginInstalled ( package ) ;
}
}
}
@ -479,7 +479,8 @@ namespace MediaBrowser.Common.Implementations.Updates
{
// Target based on if it is an archive or single assembly
// zip archives are assumed to contain directory structures relative to our ProgramDataPath
var isArchive = string . Equals ( Path . GetExtension ( package . targetFilename ) , ".zip" , StringComparison . OrdinalIgnoreCase ) ;
var extension = Path . GetExtension ( package . targetFilename ) ;
var isArchive = string . Equals ( extension , ".zip" , StringComparison . OrdinalIgnoreCase ) | | string . Equals ( extension , ".rar" , StringComparison . OrdinalIgnoreCase ) | | string . Equals ( extension , ".7z" , StringComparison . OrdinalIgnoreCase ) ;
var target = Path . Combine ( isArchive ? _appPaths . TempUpdatePath : _appPaths . PluginsPath , package . targetFilename ) ;
// Download to temporary file so that, if interrupted, it won't destroy the existing installation
@ -536,7 +537,6 @@ namespace MediaBrowser.Common.Implementations.Updates
}
}
/// <summary>
/// Uninstalls a plugin
/// </summary>