MDL-25314 getting rid of @ hiding error
[moodle.git] / lib / setup.php
index 055fcdd..80adab7 100644 (file)
@@ -104,7 +104,7 @@ if (!isset($_SERVER['REMOTE_ADDR']) && isset($_SERVER['argv'][0])) {
 }
 
 // sometimes default PHP settings are borked on shared hosting servers, I wonder why they have to do that??
-@ini_set('precision', 14); // needed for upgrades and gradebook
+ini_set('precision', 14); // needed for upgrades and gradebook
 
 // Scripts may request no debug and error messages in output
 // please note it must be defined before including the config.php script
@@ -116,7 +116,10 @@ if (!defined('NO_DEBUG_DISPLAY')) {
 // Servers should define a default timezone in php.ini, but if they don't then make sure something is defined.
 // This is a quick hack.  Ideally we should ask the admin for a value.  See MDL-22625 for more on this.
 if (function_exists('date_default_timezone_set') and function_exists('date_default_timezone_get')) {
-    @date_default_timezone_set(@date_default_timezone_get());
+    $olddebug = error_reporting(0);
+    date_default_timezone_set(date_default_timezone_get());
+    error_reporting($olddebug);
+    unset($olddebug);
 }
 
 // PHPUnit scripts are a special case, for now we treat them as normal CLI scripts,
@@ -154,14 +157,14 @@ if (defined('WEB_CRON_EMULATED_CLI')) {
 // Detect CLI maintenance mode - this is useful when you need to mess with database, such as during upgrades
 if (file_exists("$CFG->dataroot/climaintenance.html")) {
     if (!CLI_SCRIPT) {
-        @header('Content-type: text/html');
+        header('Content-type: text/html');
         /// Headers to make it not cacheable and json
-        @header('Cache-Control: no-store, no-cache, must-revalidate');
-        @header('Cache-Control: post-check=0, pre-check=0', false);
-        @header('Pragma: no-cache');
-        @header('Expires: Mon, 20 Aug 1969 09:23:00 GMT');
-        @header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
-        @header('Accept-Ranges: none');
+        header('Cache-Control: no-store, no-cache, must-revalidate');
+        header('Cache-Control: post-check=0, pre-check=0', false);
+        header('Pragma: no-cache');
+        header('Expires: Mon, 20 Aug 1969 09:23:00 GMT');
+        header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
+        header('Accept-Ranges: none');
         readfile("$CFG->dataroot/climaintenance.html");
         die;
     } else {
@@ -205,10 +208,10 @@ if (defined('ABORT_AFTER_CONFIG')) {
             error_reporting(0);
         }
         if (empty($CFG->debugdisplay)) {
-            @ini_set('display_errors', '0');
-            @ini_set('log_errors', '1');
+            ini_set('display_errors', '0');
+            ini_set('log_errors', '1');
         } else {
-            @ini_set('display_errors', '1');
+            ini_set('display_errors', '1');
         }
         require_once("$CFG->dirroot/lib/configonlylib.php");
         return;
@@ -506,14 +509,14 @@ if (!isset($CFG->debugdisplay)) {
     // keep it "as is" during installation
 } else if (NO_DEBUG_DISPLAY) {
     // some parts of Moodle cannot display errors and debug at all.
-    @ini_set('display_errors', '0');
-    @ini_set('log_errors', '1');
+    ini_set('display_errors', '0');
+    ini_set('log_errors', '1');
 } else if (empty($CFG->debugdisplay)) {
-    @ini_set('display_errors', '0');
-    @ini_set('log_errors', '1');
+    ini_set('display_errors', '0');
+    ini_set('log_errors', '1');
 } else {
     // This is very problematic in XHTML strict mode!
-    @ini_set('display_errors', '1');
+    ini_set('display_errors', '1');
 }
 
 // detect unsupported upgrade jump as soon as possible - do not change anything, do not use system functions
@@ -570,10 +573,10 @@ if (stristr(PHP_OS, 'win') && !stristr(PHP_OS, 'darwin')) {
 $CFG->os = PHP_OS;
 
 // Configure ampersands in URLs
-@ini_set('arg_separator.output', '&');
+ini_set('arg_separator.output', '&');
 
 // Work around for a PHP bug   see MDL-11237
-@ini_set('pcre.backtrack_limit', 20971520);  // 20 MB
+ini_set('pcre.backtrack_limit', 20971520);  // 20 MB
 
 // Location of standard files
 $CFG->wordlist = $CFG->libdir .'/wordlist.txt';