Dark autoloader magic for ThemingDefaults

This commit is contained in:
Roeland Jago Douma 2016-08-24 13:22:21 +02:00
parent 2f1b17d44a
commit 4e1d501696
No known key found for this signature in database
GPG key ID: 1E152838F164D13B

View file

@ -643,10 +643,16 @@ class Server extends ServerContainer implements IServerContainer {
return $factory->getManager();
});
$this->registerService('ThemingDefaults', function(Server $c) {
try {
$classExists = class_exists('OCA\Theming\ThemingDefaults');
} catch (\OCP\AutoloadNotAllowedException $e) {
// App disabled or in maintenance mode
/*
* Dark magic for autoloader.
* If we do a class_exists it will try to load the class which will
* make composer cache the result. Resulting in errors when enabling
* the theming app.
*/
$prefixes = \OC::$composerAutoloader->getPrefixesPsr4();
if (isset($prefixes['OCA\\Theming\\'])) {
$classExists = true;
} else {
$classExists = false;
}