From 23557f06d13f121a8483376dad1604eb30711a88 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Thu, 9 Aug 2012 14:54:49 +0200 Subject: - Fix (workaround) delete operations with some versions of memcache (#1488592) --- CHANGELOG | 1 + program/include/rcube_cache.php | 9 ++++++--- program/include/rcube_session.php | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 464bc40e4..6da5d24db 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Fix (workaround) delete operations with some versions of memcache (#1488592) - Fix (disable) request validation for spell and spell_html actions - Add new DB abstraction layer based on PHP PDO, supporting SQLite3 (#1488332) - Removed PEAR::MDB2 package diff --git a/program/include/rcube_cache.php b/program/include/rcube_cache.php index 17a8859d8..cdb1dd52f 100644 --- a/program/include/rcube_cache.php +++ b/program/include/rcube_cache.php @@ -463,10 +463,13 @@ class rcube_cache */ private function delete_record($key, $index=true) { - if ($this->type == 'memcache') - $this->db->delete($this->ckey($key)); - else + if ($this->type == 'memcache') { + // #1488592: use 2nd argument + $this->db->delete($this->ckey($key), 0); + } + else { apc_delete($this->ckey($key)); + } if ($index) { if (($idx = array_search($key, $this->index)) !== false) { diff --git a/program/include/rcube_session.php b/program/include/rcube_session.php index e3b5600ca..b6a0ccf62 100644 --- a/program/include/rcube_session.php +++ b/program/include/rcube_session.php @@ -312,7 +312,8 @@ class rcube_session public function mc_destroy($key) { if ($key) { - $this->memcache->delete($key); + // #1488592: use 2nd argument + $this->memcache->delete($key, 0); } return true; -- cgit v1.2.3