From 71f72f928b2e637471268416131841b4ddca2bd0 Mon Sep 17 00:00:00 2001 From: alecpl Date: Thu, 8 Sep 2011 08:31:13 +0000 Subject: - Fix new caching issue when broken/misleading object data was stored in database. The object must be cleaned up before storing in DB, because some code (out of rcube_message and rcube_imap classes) is changing objects data e.g. parts mimetype or body. Now it's become a problem because we're saving the object in cache at shutdown (after all modifications). - Make stored message object smaller by removing some redundant data. --- program/include/rcube_imap.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'program/include/rcube_imap.php') diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php index a15a5923c..d14a643de 100644 --- a/program/include/rcube_imap.php +++ b/program/include/rcube_imap.php @@ -1999,12 +1999,11 @@ class rcube_imap } $struct = &$this->_structure_part($structure, 0, '', $headers); - $struct->headers = get_object_vars($headers); // don't trust given content-type - if (empty($struct->parts) && !empty($struct->headers['ctype'])) { + if (empty($struct->parts) && !empty($headers->ctype)) { $struct->mime_id = '1'; - $struct->mimetype = strtolower($struct->headers['ctype']); + $struct->mimetype = strtolower($headers->ctype); list($struct->ctype_primary, $struct->ctype_secondary) = explode('/', $struct->mimetype); } -- cgit v1.2.3