aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Updates
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-12-06 10:13:08 -0700
committercrobibero <cody@robibe.ro>2020-12-06 10:13:08 -0700
commit8df2213d6b91085b4bb3982b79592c2faa7a2ab1 (patch)
tree4ca813848179c4df8d627e4020909bcf5f5e90fb /Emby.Server.Implementations/Updates
parenta7b461adb472eb4591922e921e683b26ded87251 (diff)
Don't return plugin versions that target newer Jellyfin version
Diffstat (limited to 'Emby.Server.Implementations/Updates')
-rw-r--r--Emby.Server.Implementations/Updates/InstallationManager.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/Emby.Server.Implementations/Updates/InstallationManager.cs b/Emby.Server.Implementations/Updates/InstallationManager.cs
index ef346dd5d..ce9ffe42b 100644
--- a/Emby.Server.Implementations/Updates/InstallationManager.cs
+++ b/Emby.Server.Implementations/Updates/InstallationManager.cs
@@ -12,7 +12,6 @@ using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
using Jellyfin.Data.Events;
-using MediaBrowser.Common;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Json;
using MediaBrowser.Common.Net;
@@ -190,6 +189,22 @@ namespace Emby.Server.Implementations.Updates
continue;
}
+ for (var i = package.versions.Count - 1; i >= 0; i--)
+ {
+ // Remove versions with a target abi that is greater then the current application version.
+ if (Version.TryParse(package.versions[i].targetAbi, out var targetAbi)
+ && _applicationHost.ApplicationVersion < targetAbi)
+ {
+ package.versions.RemoveAt(i);
+ }
+ }
+
+ // Don't add a package that doesn't have any compatible versions.
+ if (package.versions.Count == 0)
+ {
+ continue;
+ }
+
var existing = FilterPackages(result, package.name, packageGuid).FirstOrDefault();
if (existing != null)
{