From ab788eaa232db0016b759de0eb3e14647f6581be Mon Sep 17 00:00:00 2001
From: Bart Visscher <bartv@thisnet.nl>
Date: Tue, 5 Jun 2012 23:09:49 +0200
Subject: [PATCH] OC_Cache_File ttl=0 indicates forever, but expire in a day to
 keep the cache clean

---
 lib/cache/file.php | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/cache/file.php b/lib/cache/file.php
index 348389e9ff..0b7d3e3050 100644
--- a/lib/cache/file.php
+++ b/lib/cache/file.php
@@ -33,6 +33,9 @@ class OC_Cache_File{
 	public function set($key, $value, $ttl=0) {
 		$storage = $this->getStorage();
 		if ($storage and $storage->file_put_contents($key, $value)) {
+			if ($ttl === 0) {
+				$ttl = 86400; // 60*60*24
+			}
 			return $storage->touch($key, time() + $ttl);
 		}
 		return false;
@@ -40,7 +43,7 @@ class OC_Cache_File{
 
 	public function hasKey($key) {
 		$storage = $this->getStorage();
-		if ($storage->is_file($key)) {
+		if ($storage && $storage->is_file($key)) {
 			$mtime = $storage->filemtime($key);
 			if ($mtime < time()) {
 				$storage->unlink($key);
-- 
GitLab