diff --git a/include/class_session.inc b/include/class_session.inc
index e466be12a2dc80527620b5660ba1cdc93cfc41e0..b9e0f6012df15e5c3d35bf3ee2471f4f3dfa683a 100644
--- a/include/class_session.inc
+++ b/include/class_session.inc
@@ -134,11 +134,25 @@ class session {
   }
 
   /*!
-   * \brief Accessor of a session
+   * \brief Accessor of a session var
    *
-   * \param string $name Name of the session
+   * \param string $name Name of the session var
+   */
+  public static function global_get($name)
+  {
+    if (isset($_SESSION[$name])) {
+      return $_SESSION[$name];
+    } else {
+      return NULL;
+    }
+  }
+
+  /*!
+   * \brief Accessor of a session var by reference
+   *
+   * \param string $name Name of the session var
    */
-  public static function &global_get($name)
+  public static function &global_get_ref($name)
   {
     $ret = &$_SESSION[$name];
     return $ret;
diff --git a/include/class_userinfo.inc b/include/class_userinfo.inc
index 081ef3b59716b113eb543343a5c85d8643143883..16aa80affe9b39bc6cce5481a35455391a840ecb 100644
--- a/include/class_userinfo.inc
+++ b/include/class_userinfo.inc
@@ -428,7 +428,7 @@ class userinfo
     }
 
     /* Push cache answer? */
-    $ACL_CACHE = &session::global_get('ACL_CACHE');
+    $ACL_CACHE = &session::global_get_ref('ACL_CACHE');
     if (isset($ACL_CACHE["$dn+$object+$attribute"])) {
       $ret = $ACL_CACHE["$dn+$object+$attribute"];
       if ($skip_write) {
@@ -635,7 +635,7 @@ class userinfo
     }
 
     /* Use cached results if possilbe */
-    $ACL_CACHE = &session::global_get('ACL_CACHE');
+    $ACL_CACHE = &session::global_get_ref('ACL_CACHE');
 
     if (!is_array($module)) {
       $module = array($module);
diff --git a/include/functions.inc b/include/functions.inc
index 91fd8434f8f4781bf69b7df571867e2957578d8c..92c0f97cc8d064d0369ef40bdbf0a78c1f40d67a 100644
--- a/include/functions.inc
+++ b/include/functions.inc
@@ -637,7 +637,7 @@ function add_lock($object, $user)
     return;
   }
 
-  $cache = &session::global_get('LOCK_CACHE');
+  $cache = &session::global_get_ref('LOCK_CACHE');
   if (isset($_POST['open_readonly'])) {
     $cache['READ_ONLY'][$object] = TRUE;
     return;
@@ -710,7 +710,7 @@ function del_lock ($object)
       skip removing the lock entry, there wasn't any lock created.
     */
   if (session::global_is_set('LOCK_CACHE')) {
-    $cache = &session::global_get('LOCK_CACHE');
+    $cache = &session::global_get_ref('LOCK_CACHE');
     if (isset($cache['READ_ONLY'][$object])) {
       unset($cache['READ_ONLY'][$object]);
       return;