Browse Source

Probably the problem with php 4.1 is a register/unregister order. This
new prefs version changes that order to a more logical one and the prefs
get cached again. Should be noted for other modules. I maintain the
workaround because it is a logical check to be done.

philippe_mingo 23 years ago
parent
commit
d532e5b82b
1 changed files with 4 additions and 4 deletions
  1. 4 4
      functions/prefs.php

+ 4 - 4
functions/prefs.php

@@ -29,7 +29,10 @@ function cachePrefValues($data_dir, $username) {
     if ($prefs_are_cached) {
         return;
     }
-
+    
+    session_unregister('prefs_cache');
+    session_unregister('prefs_are_cached');
+    
     /* Calculate the filename for the user's preference file */
     $filename = getHashedFile($username, $data_dir, "$username.pref");
 
@@ -65,11 +68,8 @@ function cachePrefValues($data_dir, $username) {
      }
      fclose($file);
 
-     session_unregister('prefs_cache');
      session_register('prefs_cache');
-       
      $prefs_are_cached = true;
-     session_unregister('prefs_are_cached');
      session_register('prefs_are_cached');
 }