Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Goetz <markus@woboq.com>2013-08-15 13:58:09 +0400
committerMarkus Goetz <markus@woboq.com>2013-08-15 13:58:09 +0400
commit3972198b61957ccefecd1a9840c9a46fb4e07ae9 (patch)
tree76e16a25ec52f057448e926f5e3d720ea1ccaf2c /lib/util.php
parent680ac48856a4fff2445f0be3707d846b46ae670c (diff)
Cache OC_Util::checkServer() result in session
The return value almost never changes but this function is called for every request.
Diffstat (limited to 'lib/util.php')
-rwxr-xr-xlib/util.php7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/util.php b/lib/util.php
index b7dc2207e6c..25632ac1ea2 100755
--- a/lib/util.php
+++ b/lib/util.php
@@ -168,6 +168,10 @@ class OC_Util {
* @return array arrays with error messages and hints
*/
public static function checkServer() {
+ // Assume that if checkServer() succeeded before in this session, then all is fine.
+ if(\OC::$session->exists('checkServer_suceeded') && \OC::$session->get('checkServer_suceeded'))
+ return array();
+
$errors=array();
$defaults = new \OC_Defaults();
@@ -309,6 +313,9 @@ class OC_Util {
'hint'=>'Please ask your server administrator to restart the web server.');
}
+ // Cache the result of this function
+ \OC::$session->set('checkServer_suceeded', count($errors) == 0);
+
return $errors;
}