diff --git a/include/class_session.inc b/include/class_session.inc
index 889104282e7f31207827f066b3189b60784f6b94..e54a922a279cca81d0906eefb9126db0393ad002 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 a41fbf2d37df26eb3ed29899e84645558d2a1a6f..f5addc8593485c781852a59118c2453caf148a4c 100644
--- a/include/class_userinfo.inc
+++ b/include/class_userinfo.inc
@@ -419,7 +419,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) {
@@ -626,7 +626,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 e176e5cc4a3fb88baafc564ef862b77241ac5cd8..335da34ea26d46e4d7413a3e09525dbf93bc5ee6 100644
--- a/include/functions.inc
+++ b/include/functions.inc
@@ -612,7 +612,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;
@@ -685,7 +685,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;