[Tickets #7181] Re: Fatal error: Cannot use object of type PEAR_Error as array in /usr/share/horde3/lib/Horde/IMAP/Cache.php on line 80

bugs at horde.org bugs at horde.org
Wed Sep 3 15:30:00 UTC 2008


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/7181
------------------------------------------------------------------------------
  Ticket             | 7181
  Updated By         | mike at soroki.com
  Summary            | Fatal error: Cannot use object of type PEAR_Error as
                     | array in /usr/share/horde3/lib/Horde/IMAP/Cache.php on
                     | line 80
  Queue              | Horde Framework Packages
  Version            | FRAMEWORK_3
  Type               | Bug
  State              | Feedback
  Priority           | 2. Medium
  Milestone          |
  Patch              |
  Owners             |
------------------------------------------------------------------------------


mike at soroki.com (2008-09-03 11:30) wrote:

>>> What do you do to get this to happen? What are the actual versions
>>> involved?
>>
>> Debian Lenny
>> aptitude install horde3
>> Version: Horde (horde)  3.2.1
>>
>> I activate caching in the administration -> configuration -> Webmail
>> (imp)  H3 (4.2) -> Mailbox and Fetchmail -> Mailbox List Caching
>>
>> Every time i click on webmail the error below appear.
>
> In getCache() located in imp/lib/IMAP/Cache.php, please put a
> print_r($res) right before the Horde_Serialize::unserialize() line.
> The critical information is what data is serialized in the cache.

Hi, I am also hitting this bug when enabling cache driver  
"eaccelerator" in horde/conf.php

Including the print statement suggested didn't help:

horde/imp/lib/IMAP/Cache.php

  function getCache($imap, $mailbox, $key = null, $check = true)
     {
         $imp_imap = &IMP_IMAP::singleton();
         $res = parent::getCache($imp_imap->stream(), $mailbox, $key, $check);
         if ($this->_usecache &&
             ($res === false) &&
             !isset($this->_cache[$mailbox])) {
             require_once 'Horde/Cache.php';
             $cache =  
&Horde_Cache::singleton($GLOBALS['conf']['cache']['driver'],  
Horde::getDriverConfig('cache', $GLOBALS['conf']['cache']['driver']));
             $res = $cache->get($this->_getHordeCacheID($mailbox),  
$GLOBALS['conf']['mlistcache']['lifetime']);
             if ($res === false) {
                 $this->_cache[$mailbox] = array('d' => array(), 'k' => null);
             } else {
                 require_once 'Horde/Serialize.php';
                 print_r($res);
                 $this->_cache[$mailbox] =  
Horde_Serialize::unserialize($res, SERIALIZE_BASIC);
                 $res = parent::getCache($imp_imap->stream(),  
$mailbox, $key, $check);
                 Horde::logMessage('Retrieved ' . $mailbox . ' from  
cache.', __FILE__, __LINE__, PEAR_LOG_DEBUG);
             }
         }
         return $res;
     }






More information about the bugs mailing list