From 00cb22cf92d267fe602ad37336fba4454c6aa896 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak <alec@alec.pl> Date: Sat, 25 May 2013 09:46:20 -0400 Subject: [PATCH] Expunge all cache instances in shutdown --- program/lib/Roundcube/rcube.php | 3 +++ program/lib/Roundcube/rcube_cache_shared.php | 2 +- program/lib/Roundcube/rcube_imap.php | 3 +++ program/lib/Roundcube/rcube_cache.php | 2 +- 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/program/lib/Roundcube/rcube.php b/program/lib/Roundcube/rcube.php index a57cad5..78d7959 100644 --- a/program/lib/Roundcube/rcube.php +++ b/program/lib/Roundcube/rcube.php @@ -897,6 +897,9 @@ foreach ($this->caches as $cache) { if (is_object($cache)) { + if ($this->expunge_cache) { + $cache->expunge(); + } $cache->close(); } } diff --git a/program/lib/Roundcube/rcube_cache.php b/program/lib/Roundcube/rcube_cache.php index 92f12a8..129f324 100644 --- a/program/lib/Roundcube/rcube_cache.php +++ b/program/lib/Roundcube/rcube_cache.php @@ -192,7 +192,7 @@ */ function expunge() { - if ($this->type == 'db' && $this->db) { + if ($this->type == 'db' && $this->db && $this->ttl) { $this->db->query( "DELETE FROM ".$this->db->table_name('cache'). " WHERE user_id = ?". diff --git a/program/lib/Roundcube/rcube_cache_shared.php b/program/lib/Roundcube/rcube_cache_shared.php index bef9e85..c43d2ca 100644 --- a/program/lib/Roundcube/rcube_cache_shared.php +++ b/program/lib/Roundcube/rcube_cache_shared.php @@ -191,7 +191,7 @@ */ function expunge() { - if ($this->type == 'db' && $this->db) { + if ($this->type == 'db' && $this->db && $this->ttl) { $this->db->query( "DELETE FROM " . $this->table . " WHERE cache_key LIKE ?" diff --git a/program/lib/Roundcube/rcube_imap.php b/program/lib/Roundcube/rcube_imap.php index 43c61fd..31e7079 100644 --- a/program/lib/Roundcube/rcube_imap.php +++ b/program/lib/Roundcube/rcube_imap.php @@ -3749,9 +3749,12 @@ $this->mcache->expunge($ttl); } +/* + // this cache is expunged by rcube class if ($this->cache) { $this->cache->expunge(); } +*/ } -- Gitblit v1.9.1