From dc4d3842e02487b00ae8419f76b3272cc3633121 Mon Sep 17 00:00:00 2001 From: Philipp Holzer Date: Mon, 28 Oct 2019 22:24:46 +0100 Subject: [PATCH] Fix wrong check for logfile in admin summary --- src/Module/Admin/Summary.php | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/Module/Admin/Summary.php b/src/Module/Admin/Summary.php index e1952f294..52b138014 100644 --- a/src/Module/Admin/Summary.php +++ b/src/Module/Admin/Summary.php @@ -12,6 +12,7 @@ use Friendica\Database\DBA; use Friendica\Database\DBStructure; use Friendica\Model\Register; use Friendica\Module\BaseAdminModule; +use Friendica\Network\HTTPException\InternalServerErrorException; use Friendica\Util\ConfigFileLoader; use Friendica\Util\DateTimeFormat; use Friendica\Util\FileSystem; @@ -85,20 +86,27 @@ class Summary extends BaseAdminModule try { $stream = $fileSystem->createStream($file); - if (is_file($stream) && - !is_writeable($stream)) { - $warningtext[] = L10n::t('The logfile \'%s\' is not writable. No logging possible', $stream); + if (!isset($stream)) { + throw new InternalServerErrorException('Stream is null.'); } } catch (\Throwable $exception) { $warningtext[] = L10n::t('The logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage()); } - $stream = Config::get('system', 'dlogfile'); + $file = Config::get('system', 'dlogfile'); - if (is_file($stream) && - !is_writeable($stream)) { - $warningtext[] = L10n::t('The logfile \'%s\' is not writable. No logging possible', $stream); + try { + if (!empty($file)) { + $stream = $fileSystem->createStream($file); + + if (!isset($stream)) { + throw new InternalServerErrorException('Stream is null.'); + } + } + + } catch (\Throwable $exception) { + $warningtext[] = L10n::t('The developer logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage()); } }