From 3d29a82150d14ee9489b6d40a39b66d0c07cf1de Mon Sep 17 00:00:00 2001
From: Arthur Schiwon <blizzz@owncloud.com>
Date: Tue, 26 Mar 2013 16:03:40 +0100
Subject: [PATCH] Cache: Do not overwrite ETag when file did not change

---
 lib/files/cache/scanner.php | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/lib/files/cache/scanner.php b/lib/files/cache/scanner.php
index a1f688d3ac..2517118058 100644
--- a/lib/files/cache/scanner.php
+++ b/lib/files/cache/scanner.php
@@ -74,14 +74,16 @@ class Scanner {
 					$this->scanFile($parent);
 				}
 			}
-			if ($checkExisting and $cacheData = $this->cache->get($file)) {
-				if ($data['size'] === -1) {
-					$data['size'] = $cacheData['size'];
-				}
+			if($cacheData = $this->cache->get($file)) {
 				if ($data['mtime'] === $cacheData['mtime']) {
 					$data['etag'] = $cacheData['etag'];
 				}
 			}
+			if ($checkExisting and $cacheData) {
+				if ($data['size'] === -1) {
+					$data['size'] = $cacheData['size'];
+				}
+			}
 			$this->cache->put($file, $data);
 		}
 		return $data;
-- 
GitLab