diff options
author | Ferdinand Thiessen <opensource@fthiessen.de> | 2025-05-14 09:55:14 +0200 |
---|---|---|
committer | Ferdinand Thiessen <opensource@fthiessen.de> | 2025-05-14 09:55:14 +0200 |
commit | 85a6b0d0ebcaf105b914184fdbca9a7c8ee04ab7 (patch) | |
tree | 4201fd2240883b4453e37fe5ea987146b9effa98 | |
parent | a338772ddd135d5314275fa314ba34be6aec9683 (diff) | |
download | nextcloud-server-chore/oc-helper-can-exec.tar.gz nextcloud-server-chore/oc-helper-can-exec.zip |
chore: deprecate \OC_Helper::canExecutechore/oc-helper-can-exec
replace this legacy method with just the IBinaryFinder
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
-rw-r--r-- | lib/private/Files/Type/Detection.php | 7 | ||||
-rw-r--r-- | lib/private/legacy/OC_Helper.php | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/lib/private/Files/Type/Detection.php b/lib/private/Files/Type/Detection.php index 42315247dbf..aeaac030413 100644 --- a/lib/private/Files/Type/Detection.php +++ b/lib/private/Files/Type/Detection.php @@ -9,6 +9,7 @@ declare(strict_types=1); namespace OC\Files\Type; use OCP\Files\IMimeTypeDetector; +use OCP\IBinaryFinder; use OCP\ITempManager; use OCP\IURLGenerator; use Psr\Log\LoggerInterface; @@ -225,11 +226,13 @@ class Detection implements IMimeTypeDetector { } } - if (\OC_Helper::canExecute('file')) { + $binaryFinder = \OCP\Server::get(IBinaryFinder::class); + $program = $binaryFinder->findBinaryPath('file'); + if ($program !== false) { // it looks like we have a 'file' command, // lets see if it does have mime support $path = escapeshellarg($path); - $fp = popen("test -f $path && file -b --mime-type $path", 'r'); + $fp = popen("test -f $path && $program -b --mime-type $path", 'r'); if ($fp !== false) { $mimeType = fgets($fp); pclose($fp); diff --git a/lib/private/legacy/OC_Helper.php b/lib/private/legacy/OC_Helper.php index a89cbe1bb3a..a9d5160ebe4 100644 --- a/lib/private/legacy/OC_Helper.php +++ b/lib/private/legacy/OC_Helper.php @@ -196,6 +196,7 @@ class OC_Helper { * @internal param string $program name * @internal param string $optional search path, defaults to $PATH * @return bool true if executable program found in path + * @deprecated 32.0.0 use the \OCP\IBinaryFinder */ public static function canExecute($name, $path = false) { // path defaults to PATH from environment if not set |