Merge pull request #29037 from Hinyka/stable21

[stable21] Fix Lots of Error: file_exists(): open_basedir restriction in effect
This commit is contained in:
Vincent Petry 2021-10-12 09:11:18 +02:00 committed by GitHub
commit 2bf6270ef5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 5 deletions

View file

@ -131,8 +131,9 @@ class Router implements IRouter {
if (isset($this->loadedApps[$app])) {
return;
}
$file = \OC_App::getAppPath($app) . '/appinfo/routes.php';
if ($file !== false && file_exists($file)) {
$appPath = \OC_App::getAppPath($app);
$file = $appPath . '/appinfo/routes.php';
if ($appPath !== false && file_exists($file)) {
$routingFiles = [$app => $file];
} else {
$routingFiles = [];

View file

@ -65,7 +65,7 @@ class Base {
*/
protected function getAppTemplateDirs($theme, $app, $serverRoot, $app_dir) {
// Check if the app is in the app folder or in the root
if (file_exists($app_dir.'/templates/')) {
if ($app_dir !== false && file_exists($app_dir.'/templates/')) {
return [
$serverRoot.'/themes/'.$theme.'/apps/'.$app.'/templates/',
$app_dir.'/templates/',

View file

@ -171,7 +171,10 @@ class IconsCacher {
} elseif (\strpos($url, $base) === 0) {
if (\preg_match('/([A-z0-9\_\-]+)\/([a-zA-Z0-9-_\~\/\.\=\:\;\+\,]+)\?color=([0-9a-fA-F]{3,6})/', $cleanUrl, $matches)) {
list(,$app,$cleanUrl, $color) = $matches;
$location = \OC_App::getAppPath($app) . '/img/' . $cleanUrl . '.svg';
$appPath = \OC_App::getAppPath($app);
if ($appPath !== false) {
$location = $appPath . '/img/' . $cleanUrl . '.svg';
}
if ($app === 'settings') {
$location = \OC::$SERVERROOT . '/settings/img/' . $cleanUrl . '.svg';
}

View file

@ -103,7 +103,7 @@ abstract class ResourceLocator {
* @return bool True if the resource was found, false otherwise
*/
protected function appendIfExist($root, $file, $webRoot = null) {
if (is_file($root.'/'.$file)) {
if ($root !== false && is_file($root.'/'.$file)) {
$this->append($root, $file, $webRoot, false);
return true;
}