From ff1bd8078960d0507c5ca0f550c650d8faa75d82 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 7 Nov 2023 16:28:27 +0100 Subject: [PATCH] dont reuse etag for folders marked explicitly unscanned Signed-off-by: Robin Appelman --- lib/private/Files/Cache/Scanner.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/private/Files/Cache/Scanner.php b/lib/private/Files/Cache/Scanner.php index 074e88e76391f..197a499898728 100644 --- a/lib/private/Files/Cache/Scanner.php +++ b/lib/private/Files/Cache/Scanner.php @@ -203,7 +203,8 @@ public function scanFile($file, $reuseExisting = 0, $parentId = -1, $cacheData = $fileId = $cacheData['fileid']; $data['fileid'] = $fileId; // only reuse data if the file hasn't explicitly changed - if (isset($data['storage_mtime']) && isset($cacheData['storage_mtime']) && $data['storage_mtime'] === $cacheData['storage_mtime']) { + $mtimeUnchanged = isset($data['storage_mtime']) && isset($cacheData['storage_mtime']) && $data['storage_mtime'] === $cacheData['storage_mtime']; + if ($mtimeUnchanged && $cacheData['size'] !== -1) { $data['mtime'] = $cacheData['mtime']; if (($reuseExisting & self::REUSE_SIZE) && ($data['size'] === -1)) { $data['size'] = $cacheData['size'];