From 64783e6d4dc0746fac79e8a00b6dc40fc9429218 Mon Sep 17 00:00:00 2001 From: Jan Schneider Date: Thu, 11 Nov 2010 16:51:22 +0100 Subject: [PATCH] We need to use serialize() for arrays too, because the serialized data might contain non-utf8 data. --- framework/Core/lib/Horde/Session.php | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/framework/Core/lib/Horde/Session.php b/framework/Core/lib/Horde/Session.php index 2df859172..8ceb715ed 100644 --- a/framework/Core/lib/Horde/Session.php +++ b/framework/Core/lib/Horde/Session.php @@ -273,18 +273,13 @@ class Horde_Session * given page load. Thus, for arrays and objects, it is beneficial to * always convert to string representations so that the object/array * does not need to be rebuilt every time the session is reloaded. */ - if (is_object($value) || ($mask & self::TYPE_OBJECT)) { + if (is_object($value) || ($mask & self::TYPE_OBJECT) || + is_array($value) || ($mask & self::TYPE_ARRAY)) { $value = serialize($value); if ($this->_lzf) { $value = lzf_compress($value); } $_SESSION[self::SERIALIZED][$key] = 's'; - } elseif (is_array($value) || ($mask & self::TYPE_ARRAY)) { - $value = json_encode($value); - if ($this->_lzf) { - $value = lzf_compress($value); - } - $_SESSION[self::SERIALIZED][$key] = 'j'; } else { unset($_SESSION[self::SERIALIZED][$key]); } -- 2.11.0