From bedd9acf7874b836bef224989c2ce7f5e3b0a2fa Mon Sep 17 00:00:00 2001 From: Damien Goutte-Gattat Date: Thu, 14 Jan 2021 22:54:53 +0000 Subject: [PATCH] Fix comparison of PHP versions Use the builtin function `version_compare` to check an app's compatibility with the available PHP version, instead of reusing the `OC\App\CompareVersion::isCompatible` method which is intended to compare Nextcloud versions. PHP version strings do not always necessarily follow the simple Major.Minor.Patch format used by Nextcloud and therefore cannot be properly compared by that method. Signed-off-by: Damien Goutte-Gattat --- lib/private/App/AppStore/Fetcher/AppFetcher.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/private/App/AppStore/Fetcher/AppFetcher.php b/lib/private/App/AppStore/Fetcher/AppFetcher.php index 4dc517879e..70bf2a37d9 100644 --- a/lib/private/App/AppStore/Fetcher/AppFetcher.php +++ b/lib/private/App/AppStore/Fetcher/AppFetcher.php @@ -113,12 +113,12 @@ class AppFetcher extends Fetcher { $phpVersion = $versionParser->getVersion($release['rawPhpVersionSpec']); $minPhpVersion = $phpVersion->getMinimumVersion(); $maxPhpVersion = $phpVersion->getMaximumVersion(); - $minPhpFulfilled = $minPhpVersion === '' || $this->compareVersion->isCompatible( + $minPhpFulfilled = $minPhpVersion === '' || version_compare( PHP_VERSION, $minPhpVersion, '>=' ); - $maxPhpFulfilled = $maxPhpVersion === '' || $this->compareVersion->isCompatible( + $maxPhpFulfilled = $maxPhpVersion === '' || version_compare( PHP_VERSION, $maxPhpVersion, '<='