summaryrefslogtreecommitdiff
path: root/program/include/main.inc
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2008-11-23 13:24:49 +0000
committerthomascube <thomas@roundcube.net>2008-11-23 13:24:49 +0000
commit29c64b0bdd3ee16532ed5f390044e5d5bec5bdec (patch)
treeab8f1d5b975cc83c15b1cdf3b98a01687ae53d22 /program/include/main.inc
parent69ad1e81240435f79dde895200bc3ddd9aa3aebf (diff)
Also clean cache table when removing old messages from cache
Diffstat (limited to 'program/include/main.inc')
-rw-r--r--program/include/main.inc18
1 files changed, 9 insertions, 9 deletions
diff --git a/program/include/main.inc b/program/include/main.inc
index e531bd8d3..b5447c70a 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -151,19 +151,19 @@ function rcmail_temp_gc()
* Garbage collector for cache entries.
* Remove all expired message cache records
*/
-function rcmail_message_cache_gc()
+function rcmail_cache_gc()
{
- global $DB, $CONFIG;
-
- // no cache lifetime configured
- if (empty($CONFIG['message_cache_lifetime']))
- return;
+ $rcmail = rcmail::get_instance();
+ $db = $rcmail->get_dbh();
// get target timestamp
- $ts = get_offset_time($CONFIG['message_cache_lifetime'], -1);
+ $ts = get_offset_time($rcmail->config->get('message_cache_lifetime', '30d'), -1);
- $DB->query("DELETE FROM ".get_table_name('messages')."
- WHERE created < ".$DB->fromunixtime($ts));
+ $db->query("DELETE FROM ".get_table_name('messages')."
+ WHERE created < " . $db->fromunixtime($ts));
+
+ $db->query("DELETE FROM ".get_table_name('cache')."
+ WHERE created < " . $db->fromunixtime($ts));
}