1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-30 05:20:56 +02:00

Merge pull request #6835 from rxu/ticket/17529

[ticket/17529] Fix installer config.php availability checks
This commit is contained in:
Marc Alexander
2025-06-25 17:43:39 +02:00
committed by GitHub

View File

@@ -145,31 +145,29 @@ 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')))
@fclose($fp);
try
{ {
$this->filesystem->phpbb_chmod($path, $exists = $writable = false;
\phpbb\filesystem\filesystem_interface::CHMOD_READ | \phpbb\filesystem\filesystem_interface::CHMOD_WRITE
);
$exists = true;
} }
catch (\phpbb\filesystem\exception\filesystem_exception $e) else
{ {
// Do nothing @fclose($fp);
try
{
$this->filesystem->phpbb_chmod($path,
\phpbb\filesystem\filesystem_interface::CHMOD_READ | \phpbb\filesystem\filesystem_interface::CHMOD_WRITE
);
$exists = true;
}
catch (\phpbb\filesystem\exception\filesystem_exception $e)
{
$writable = false;
}
} }
} }
else if (!$this->filesystem->is_writable($path))
if (file_exists($path))
{ {
if (!$this->filesystem->is_writable($path)) $writable = false;
{
$writable = false;
}
}
else
{
$exists = $writable = false;
} }
$this->set_test_passed(($exists && $writable) || $failable); $this->set_test_passed(($exists && $writable) || $failable);