From bb485fb733e215f28c3497e7f1ef49bb0047c1f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=B4me=20Chilliet?= Date: Thu, 5 Jun 2025 18:06:08 +0200 Subject: [PATCH] fix: Load all partially enabled apps routes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This avoids cache issues if some apps are only enabled for some groups, by loading the routes from all apps enabled for anyone, not only the current user. If the queried application is disabled for the current user based on groups, the middleware will cancel the query. Signed-off-by: Côme Chilliet --- lib/private/Route/Router.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/private/Route/Router.php b/lib/private/Route/Router.php index 5d0f46d6268..02f371e808a 100644 --- a/lib/private/Route/Router.php +++ b/lib/private/Route/Router.php @@ -82,7 +82,7 @@ class Router implements IRouter { public function getRoutingFiles() { if ($this->routingFiles === null) { $this->routingFiles = []; - foreach (\OC_APP::getEnabledApps() as $app) { + foreach ($this->appManager->getEnabledApps() as $app) { try { $appPath = $this->appManager->getAppPath($app); $file = $appPath . '/appinfo/routes.php'; @@ -117,7 +117,7 @@ class Router implements IRouter { $routingFiles = $this->getRoutingFiles(); $this->eventLogger->start('route:load:attributes', 'Loading Routes from attributes'); - foreach (\OC_App::getEnabledApps() as $enabledApp) { + foreach ($this->appManager->getEnabledApps() as $enabledApp) { $this->loadAttributeRoutes($enabledApp); } $this->eventLogger->end('route:load:attributes');