diff options
Diffstat (limited to 'lib/private/legacy')
-rw-r--r-- | lib/private/legacy/app.php | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/lib/private/legacy/app.php b/lib/private/legacy/app.php index 627107a63a8..bd261b05e51 100644 --- a/lib/private/legacy/app.php +++ b/lib/private/legacy/app.php @@ -200,17 +200,25 @@ class OC_App { if(isset(self::$alreadyRegistered[$key])) { return; } + self::$alreadyRegistered[$key] = true; + // Register on PSR-4 composer autoloader $appNamespace = \OC\AppFramework\App::buildAppNamespace($app); \OC::$server->registerNamespace($app, $appNamespace); - \OC::$composerAutoloader->addPsr4($appNamespace . '\\', $path . '/lib/', true); + + if (file_exists($path . '/composer/autoload.php')) { + require_once $path . '/composer/autoload.php'; + } else { + \OC::$composerAutoloader->addPsr4($appNamespace . '\\', $path . '/lib/', true); + // Register on legacy autoloader + \OC::$loader->addValidRoot($path); + } + + // Register Test namespace only when testing if (defined('PHPUNIT_RUN') || defined('CLI_TEST_RUN')) { \OC::$composerAutoloader->addPsr4($appNamespace . '\\Tests\\', $path . '/tests/', true); } - - // Register on legacy autoloader - \OC::$loader->addValidRoot($path); } /** |