From: Reini U. <ru...@us...> - 2008-03-22 21:57:36
|
Update of /cvsroot/phpwiki/phpwiki/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7870 Modified Files: main.php Log Message: Improve pref handling clone the user object before destroying the important but lengthy fields. (overlong session data) Index: main.php =================================================================== RCS file: /cvsroot/phpwiki/phpwiki/lib/main.php,v retrieving revision 1.242 retrieving revision 1.243 diff -u -2 -b -p -d -r1.242 -r1.243 --- main.php 14 Feb 2008 18:27:49 -0000 1.242 +++ main.php 22 Mar 2008 21:49:18 -0000 1.243 @@ -150,5 +150,7 @@ class WikiRequest extends Request { function initializeLang () { // check non-default pref lang - $_lang = @$this->_prefs->_prefs['lang']; + if (empty($this->_prefs->_prefs['lang'])) + return; + $_lang = $this->_prefs->_prefs['lang']; if (isset($_lang->lang) and $_lang->lang != $GLOBALS['LANG']) { $user_lang = $_lang->lang; @@ -171,8 +173,12 @@ class WikiRequest extends Request { // Load non-default theme (when = login) - $_theme = @$this->_prefs->_prefs['theme']; - if ($_theme and isset($_theme->theme)) + if (!empty($this->_prefs->_prefs['theme'])) { + $_theme = $this->_prefs->_prefs['theme']; + if (isset($_theme) and isset($_theme->theme)) $user_theme = $_theme->theme; else + $user_theme = ''; + } + else $user_theme = $this->getPref('theme'); @@ -256,5 +262,7 @@ class WikiRequest extends Request { } } - $this->setSessionVar('wiki_user', $this->_user); + $tmpuser = $this->_user; // clone it + $this->setSessionVar('wiki_user', $tmpuser); + unset($tmpuser); } @@ -807,4 +815,6 @@ class WikiRequest extends Request { unset($this->_user->_HomePagehandle); unset($this->_user->_auth_dbi); + unset($this->_user->_dbi); + unset($this->_user->_request); } Request::finish(); @@ -1383,4 +1393,9 @@ if (!defined('PHPWIKI_NOMAIN') or !PHPWI // $Log$ +// Revision 1.243 2008/03/22 21:49:18 rurban +// Improve pref handling +// clone the user object before destroying the important but lengthy fields. +// (overlong session data) +// // Revision 1.242 2008/02/14 18:27:49 rurban // signin fixes for !ENABLE_USER_NEW (to overcome php-5.2 recursion login |