Browse Source

Detect leading spaces in config files

Because those will cause PHP to output to stdout and will cause
unrelated error messages.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
tags/v25.0.0beta1
Vincent Petry 1 year ago
parent
commit
89cb450c84
No account linked to committer's email address
1 changed files with 8 additions and 0 deletions
  1. 8
    0
      lib/private/Config.php

+ 8
- 0
lib/private/Config.php View File

@@ -231,6 +231,14 @@ class Config {

unset($CONFIG);
include $file;
if (!defined('PHPUNIT_RUN') && headers_sent()) {
// syntax issues in the config file like leading spaces causing PHP to send output
$errorMessage = sprintf('Config file has leading content, please remove everything before "<?php" in %s', basename($file));
if (!defined('OC_CONSOLE')) {
print(\OCP\Util::sanitizeHTML($errorMessage));
}
throw new \Exception($errorMessage);
}
if (isset($CONFIG) && is_array($CONFIG)) {
$this->cache = array_merge($this->cache, $CONFIG);
}

Loading…
Cancel
Save