Selaa lähdekoodia

Restore loadApp() autoload registration

Also changes the autoloader validRoots into a hashmap to try and reduce
duplicate entries
tags/v8.2beta1
Robin McCorkell 8 vuotta sitten
vanhempi
commit
862afd80b3
2 muutettua tiedostoa jossa 7 lisäystä ja 3 poistoa
  1. 6
    3
      lib/autoloader.php
  2. 1
    0
      lib/private/app.php

+ 6
- 3
lib/autoloader.php Näytä tiedosto

@@ -51,7 +51,9 @@ class Autoloader {
* @param string[] $validRoots
*/
public function __construct(array $validRoots) {
$this->validRoots = $validRoots;
foreach ($validRoots as $root) {
$this->validRoots[$root] = true;
}
}

/**
@@ -60,7 +62,8 @@ class Autoloader {
* @param string $root
*/
public function addValidRoot($root) {
$this->validRoots[] = stream_resolve_include_path($root);
$root = stream_resolve_include_path($root);
$this->validRoots[$root] = true;
}

/**
@@ -126,7 +129,7 @@ class Autoloader {
}

protected function isValidPath($fullPath) {
foreach ($this->validRoots as $root) {
foreach ($this->validRoots as $root => $true) {
if (substr($fullPath, 0, strlen($root) + 1) === $root . '/') {
return true;
}

+ 1
- 0
lib/private/app.php Näytä tiedosto

@@ -131,6 +131,7 @@ class OC_App {
*/
public static function loadApp($app, $checkUpgrade = true) {
self::$loadedApps[] = $app;
\OC::$loader->addValidRoot(self::getAppPath($app)); // in case someone calls loadApp() directly
if (is_file(self::getAppPath($app) . '/appinfo/app.php')) {
\OC::$server->getEventLogger()->start('load_app_' . $app, 'Load app: ' . $app);
if ($checkUpgrade and self::shouldUpgrade($app)) {

Loading…
Peruuta
Tallenna