lib/cache/merb/redis_store.rb in redis-store-1.0.0.beta5 vs lib/cache/merb/redis_store.rb in redis-store-1.0.0.rc1

- old
+ new

@@ -43,12 +43,16 @@ def write_all(key, data = nil, parameters = {}, conditions = {}) write key, data, parameters, conditions end def fetch(key, parameters = {}, conditions = {}, &blk) - read(key, parameters) || (write key, yield, parameters, conditions if block_given?) + (data = read(key, parameters)) || block_given? && begin + data = yield + write(key, data, parameters, conditions) + end + data || nil end - + def exists?(key, parameters = {}) @data.exists normalize(key, parameters) end def delete(key, parameters = {})