Skip to content

Commit

Permalink
Merge pull request #41608 from nextcloud/backport/41544/stable27
Browse files Browse the repository at this point in the history
[stable27] do not write htaccess file if disk space is too low
  • Loading branch information
szaimen committed Nov 28, 2023
2 parents 52eddf8 + f99baf1 commit c78141c
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 1 deletion.
2 changes: 1 addition & 1 deletion core/Command/Maintenance/UpdateHtaccess.php
Expand Up @@ -39,7 +39,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int
$output->writeln('.htaccess has been updated');
return 0;
} else {
$output->writeln('<error>Error updating .htaccess file, not enough permissions or "overwrite.cli.url" set to an invalid URL?</error>');
$output->writeln('<error>Error updating .htaccess file, not enough permissions, not enough free space or "overwrite.cli.url" set to an invalid URL?</error>');
return 1;
}
}
Expand Down
8 changes: 8 additions & 0 deletions lib/private/Setup.php
Expand Up @@ -560,6 +560,14 @@ public static function updateHtaccess() {
}

if ($content !== '') {
// Never write file back if disk space should be too low
if (function_exists('disk_free_space')) {
$df = disk_free_space(\OC::$SERVERROOT);
$size = strlen($content) + 10240;
if ($df !== false && $df < (float)$size) {
throw new \Exception(\OC::$SERVERROOT . " does not have enough space for writing the htaccess file! Not writing it back!");
}
}
//suppress errors in case we don't have permissions for it
return (bool)@file_put_contents($setupHelper->pathToHtaccess(), $htaccessContent . $content . "\n");
}
Expand Down

0 comments on commit c78141c

Please sign in to comment.