diff options
author | Louis Chemineau <louis@chmn.me> | 2023-02-02 12:20:30 +0100 |
---|---|---|
committer | Louis Chemineau <louis@chmn.me> | 2023-02-02 12:20:30 +0100 |
commit | 587f7315794549b6bb8e41f880f1a658a193db68 (patch) | |
tree | dac90b72d389fe0a2367bc06901c7783926775b7 | |
parent | 0ec65348d799fdd5ae4b13b2417d6b99dd2bfeab (diff) |
Use explode('/', ...)artonge/feat/download_providers
Signed-off-by: Louis Chemineau <louis@chmn.me>
-rw-r--r-- | apps/files/lib/Controller/DownloadController.php | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/apps/files/lib/Controller/DownloadController.php b/apps/files/lib/Controller/DownloadController.php index 1ebb0734e07..10588f12292 100644 --- a/apps/files/lib/Controller/DownloadController.php +++ b/apps/files/lib/Controller/DownloadController.php @@ -70,7 +70,7 @@ class DownloadController extends Controller { return $response; } - [$firstPrefix,] = \Sabre\Uri\split($files[0]); + [$firstPrefix,] = explode('/', $files[0], 2); $commonPrefix = $firstPrefix; foreach ($files as $filePath) { $commonPrefix = $this->getCommonPrefix($filePath, $commonPrefix); @@ -102,11 +102,11 @@ class DownloadController extends Controller { } private function getCommonPrefix(string $str1, string $str2): string { - $mbStr1 = mb_str_split($str1); - $mbStr2 = mb_str_split($str2); + $explodedStr1 = explode('/', $str1); + $explodedStr2 = explode('/', $str2); - for ($i = 0; $i < count($mbStr1); $i++) { - if ($mbStr1[$i] !== $mbStr2[$i]) { + for ($i = 0; $i < count($explodedStr1); $i++) { + if (!isset($explodedStr2[$i]) || $explodedStr1[$i] !== $explodedStr2[$i]) { $i--; break; } @@ -115,7 +115,7 @@ class DownloadController extends Controller { if ($i < 0) { return ''; } else { - return implode(array_slice($mbStr1, 0, $i)); + return implode(array_slice($explodedStr1, 0, $i)); } } |