From 8ed6086a82f64f252ac871d7790dfacdbc335f5a Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=B4me=20Chilliet?= Date: Mon, 19 Jun 2023 09:35:46 +0200 Subject: [PATCH] Fix user log.condition feature MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Côme Chilliet --- lib/private/Log.php | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/lib/private/Log.php b/lib/private/Log.php index 1f248be1410..9aff774d0ec 100644 --- a/lib/private/Log.php +++ b/lib/private/Log.php @@ -38,17 +38,18 @@ namespace OC; use Exception; use Nextcloud\LogNormalizer\Normalizer; -use OC\AppFramework\Bootstrap\Coordinator; use OCP\EventDispatcher\IEventDispatcher; +use OCP\ILogger; +use OCP\IUserSession; use OCP\Log\BeforeMessageLoggedEvent; use OCP\Log\IDataLogger; -use Throwable; -use function array_merge; -use OC\Log\ExceptionSerializer; -use OCP\ILogger; use OCP\Log\IFileBased; use OCP\Log\IWriter; use OCP\Support\CrashReport\IRegistry; +use OC\AppFramework\Bootstrap\Coordinator; +use OC\Log\ExceptionSerializer; +use Throwable; +use function array_merge; use function strtr; /** @@ -274,10 +275,13 @@ class Log implements ILogger, IDataLogger { // check for user if (isset($logCondition['users'])) { - $user = \OC::$server->getUserSession()->getUser(); + $user = \OCP\Server::get(IUserSession::class)->getUser(); - // if the user matches set the log condition to satisfied - if ($user !== null && in_array($user->getUID(), $logCondition['users'], true)) { + if ($user === null) { + // User is not known for this request yet + $this->logConditionSatisfied = null; + } elseif (in_array($user->getUID(), $logCondition['users'], true)) { + // if the user matches set the log condition to satisfied $this->logConditionSatisfied = true; } } -- 2.39.5