[ticket/17529] Fix installer config.php availability checks

PHPBB-17529
This commit is contained in:
rxu 2025-06-20 22:00:05 +07:00
parent 4f10e6e212
commit 6ccc6f0383
No known key found for this signature in database
GPG key ID: 955F0567380E586A

View file

@ -145,7 +145,12 @@ class check_filesystem extends \phpbb\install\task_base
// Try to create file if it does not exists // Try to create file if it does not exists
if (!file_exists($path)) if (!file_exists($path))
{ {
$fp = @fopen($path, 'w'); if (!is_resource($fp = @fopen($path, 'w')))
{
$exists = $writable = false;
}
else
{
@fclose($fp); @fclose($fp);
try try
{ {
@ -155,21 +160,16 @@ class check_filesystem extends \phpbb\install\task_base
$exists = true; $exists = true;
} }
catch (\phpbb\filesystem\exception\filesystem_exception $e) catch (\phpbb\filesystem\exception\filesystem_exception $e)
{
// Do nothing
}
}
if (file_exists($path))
{
if (!$this->filesystem->is_writable($path))
{ {
$writable = false; $writable = false;
} }
} }
else }
else if (!$this->filesystem->is_writable($path))
{ {
$exists = $writable = false; {
$writable = false;
}
} }
$this->set_test_passed(($exists && $writable) || $failable); $this->set_test_passed(($exists && $writable) || $failable);