From 7fa063ceca5d78741c47f645c6dfdf65e4be7330 Mon Sep 17 00:00:00 2001 From: Joas Schilling <coding@schilljs.com> Date: Tue, 10 Jan 2017 12:58:23 +0100 Subject: [PATCH] Better fallback for unknown log types Signed-off-by: Joas Schilling <coding@schilljs.com> --- lib/private/Log.php | 19 ++++++++++--------- tests/lib/LoggerTest.php | 6 ++++-- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/lib/private/Log.php b/lib/private/Log.php index 5ba19698612..fddd3593127 100644 --- a/lib/private/Log.php +++ b/lib/private/Log.php @@ -330,18 +330,19 @@ class Log implements ILogger { * @internal */ public static function getLogClass($logType) { - // TODO: Drop backwards compatibility for config in the future switch (strtolower($logType)) { + case 'errorlog': + return \OC\Log\Errorlog::class; + case 'syslog': + return \OC\Log\Syslog::class; + case 'file': + return \OC\Log\File::class; + + // Backwards compatibility for old and fallback for unknown log types case 'owncloud': case 'nextcloud': - $logType = 'file'; + default: + return \OC\Log\File::class; } - $logClass = 'OC\\Log\\' . ucfirst($logType); - - if (!class_exists($logClass)) { - $logClass = \OC\Log\File::class; - } - - return $logClass; } } diff --git a/tests/lib/LoggerTest.php b/tests/lib/LoggerTest.php index 8bae8d18228..da9cedc9f56 100644 --- a/tests/lib/LoggerTest.php +++ b/tests/lib/LoggerTest.php @@ -140,11 +140,13 @@ class LoggerTest extends TestCase { public function dataGetLogClass() { return [ - ['owncloud', \OC\Log\File::class], - ['nextcloud', \OC\Log\File::class], ['file', \OC\Log\File::class], ['errorlog', \OC\Log\Errorlog::class], ['syslog', \OC\Log\Syslog::class], + + ['owncloud', \OC\Log\File::class], + ['nextcloud', \OC\Log\File::class], + ['foobar', \OC\Log\File::class], ]; } -- GitLab