]> source.dussan.org Git - nextcloud-server.git/commitdiff
oc_cache needs to disable file proxys for read/write operation. Otherwise the operati...
authorBjoern Schiessle <schiessle@owncloud.com>
Thu, 8 Aug 2013 07:44:19 +0000 (09:44 +0200)
committerBjoern Schiessle <schiessle@owncloud.com>
Thu, 8 Aug 2013 07:44:19 +0000 (09:44 +0200)
lib/cache/file.php

index 531e1d50f40490aa370d14a297cf3bb552cdf450..ba3dedaf8f3c16404fba969cf6e874ea04bc8563 100644 (file)
@@ -29,22 +29,30 @@ class OC_Cache_File{
        }
 
        public function get($key) {
+               $result = null;
+               $proxyStatus = \OC_FileProxy::$enabled;
+               \OC_FileProxy::$enabled = false;
                if ($this->hasKey($key)) {
                        $storage = $this->getStorage();
-                       return $storage->file_get_contents($key);
+                       $result = $storage->file_get_contents($key);
                }
-               return null;
+               \OC_FileProxy::$enabled = $proxyStatus;
+               return $result;
        }
 
        public function set($key, $value, $ttl=0) {
                $storage = $this->getStorage();
+               $result = false;
+               $proxyStatus = \OC_FileProxy::$enabled;
+               \OC_FileProxy::$enabled = false;
                if ($storage and $storage->file_put_contents($key, $value)) {
                        if ($ttl === 0) {
                                $ttl = 86400; // 60*60*24
                        }
-                       return $storage->touch($key, time() + $ttl);
+                       $result = $storage->touch($key, time() + $ttl);
                }
-               return false;
+               \OC_FileProxy::$enabled = $proxyStatus;
+               return $result;
        }
 
        public function hasKey($key) {