mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-07-23 06:00:47 +02:00
Remove DLL support and require all packages/plugins to be zip archives
This commit is contained in:
parent
8fd9f5b6a4
commit
da169dddb5
|
@ -529,20 +529,17 @@ namespace Emby.Server.Implementations.Updates
|
||||||
|
|
||||||
private async Task PerformPackageInstallation(IProgress<double> progress, string target, PackageVersionInfo package, CancellationToken cancellationToken)
|
private async Task PerformPackageInstallation(IProgress<double> progress, string target, PackageVersionInfo package, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
// Target based on if it is an archive or single assembly
|
|
||||||
var extension = Path.GetExtension(package.targetFilename);
|
var extension = Path.GetExtension(package.targetFilename);
|
||||||
var isArchive = string.Equals(extension, ".zip", StringComparison.OrdinalIgnoreCase);
|
var isArchive = string.Equals(extension, ".zip", StringComparison.OrdinalIgnoreCase);
|
||||||
|
|
||||||
|
if (!isArchive)
|
||||||
|
{
|
||||||
|
_logger.LogError("Only zip packages are supported. {Filename} is not a zip archive.", package.targetFilename);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (target == null)
|
if (target == null)
|
||||||
{
|
{
|
||||||
if (isArchive)
|
target = Path.Combine(_appPaths.PluginsPath, Path.GetFileNameWithoutExtension(package.targetFilename));
|
||||||
{
|
|
||||||
target = Path.Combine(_appPaths.PluginsPath, Path.GetFileNameWithoutExtension(package.targetFilename));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
target = Path.Combine(_appPaths.PluginsPath, package.targetFilename);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Download to temporary file so that, if interrupted, it won't destroy the existing installation
|
// Download to temporary file so that, if interrupted, it won't destroy the existing installation
|
||||||
|
@ -561,17 +558,9 @@ namespace Emby.Server.Implementations.Updates
|
||||||
// Success - move it to the real target
|
// Success - move it to the real target
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (isArchive)
|
using (var stream = File.OpenRead(tempFile))
|
||||||
{
|
{
|
||||||
using (var stream = File.OpenRead(tempFile))
|
_zipClient.ExtractAllFromZip(stream, target, true);
|
||||||
{
|
|
||||||
_zipClient.ExtractAllFromZip(stream, target, true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Directory.CreateDirectory(Path.GetDirectoryName(target));
|
|
||||||
File.Copy(tempFile, target, true);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (IOException ex)
|
catch (IOException ex)
|
||||||
|
|
Loading…
Reference in a new issue