]> source.dussan.org Git - nextcloud-server.git/commitdiff
Merge pull request #32216 from SUNET/master
authorLouis <6653109+artonge@users.noreply.github.com>
Tue, 17 May 2022 08:14:56 +0000 (10:14 +0200)
committerGitHub <noreply@github.com>
Tue, 17 May 2022 08:14:56 +0000 (10:14 +0200)
Respect user settings in php.ini if they are big enough

1  2 
lib/base.php

diff --cc lib/base.php
index 377644c70a2e1636395255438398851a7e04cd24,844afb03af0fcb38051bd6440ffbad79997e0159..212bd01477c1aa5ec53aa0f60a4cedcbaaec9f8f
@@@ -615,17 -623,25 +615,24 @@@ class OC 
                        throw new \RuntimeException('Could not set timezone to UTC');
                }
  
                //try to configure php to enable big file uploads.
-               //this doesn´t work always depending on the web server and php configuration.
-               //Let´s try to overwrite some defaults anyway
+               //this doesn´t work always depending on the webserver and php configuration.
+               //Let´s try to overwrite some defaults if they are smaller than 1 hour
+               if (intval(@ini_get('max_execution_time') ?? 0) < 3600) {
+                       @ini_set('max_execution_time', strval(3600));
+               }
+               if (intval(@ini_get('max_input_time') ?? 0) < 3600) {
+                       @ini_set('max_input_time', strval(3600));
+               }
  
-               //try to set the maximum execution time to 60min
+               //try to set the maximum execution time to the largest time limit we have
                if (strpos(@ini_get('disable_functions'), 'set_time_limit') === false) {
-                       @set_time_limit(3600);
+                       @set_time_limit(max(intval(@ini_get('max_execution_time')), intval(@ini_get('max_input_time'))));
                }
-               @ini_set('max_execution_time', '3600');
-               @ini_set('max_input_time', '3600');
  
 -              self::setRequiredIniValues();
                self::handleAuthHeaders();
                $systemConfig = \OC::$server->get(\OC\SystemConfig::class);
                self::registerAutoloaderCache($systemConfig);