Page MenuHomePhorge

D5211.1775313897.diff
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

D5211.1775313897.diff

diff --git a/program/lib/Roundcube/cache/redis.php b/program/lib/Roundcube/cache/redis.php
--- a/program/lib/Roundcube/cache/redis.php
+++ b/program/lib/Roundcube/cache/redis.php
@@ -239,9 +239,13 @@
return false;
}
+ $keys = self::$redis->keys($key);
+
try {
$fname = method_exists(self::$redis, 'del') ? 'del' : 'delete';
- $result = self::$redis->$fname($key);
+ foreach ($keys as $key) {
+ $result = self::$redis->$fname($key);
+ }
}
catch (Exception $e) {
rcube::raise_error($e, true, false);
diff --git a/program/lib/Roundcube/rcube_cache.php b/program/lib/Roundcube/rcube_cache.php
--- a/program/lib/Roundcube/rcube_cache.php
+++ b/program/lib/Roundcube/rcube_cache.php
@@ -345,10 +345,9 @@
}
// "Remove" keys by name prefix
else if ($prefix_mode) {
- $ts = new DateTime('now', new DateTimeZone('UTC'));
$prefix = implode('.', array_slice(explode('.', trim($key, '. ')), 0, self::MAX_EXP_LEVEL));
+ $this->delete_item($this->ckey($prefix) . "*");
- $this->add_item($this->ekey($prefix), $ts->format(self::DATE_FORMAT));
foreach (array_keys($this->cache) as $k) {
if (strpos($k, $key) === 0) {

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 4, 2:44 PM (9 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18830008
Default Alt Text
D5211.1775313897.diff (1 KB)

Event Timeline