diff --git a/apps/dav/lib/connector/sabre/file.php b/apps/dav/lib/connector/sabre/file.php
index b71c4ccc621d8c39e655748650fdef689545fbd4..0bf7d9cf2bc471ade59fed3e620c272d745b724f 100644
--- a/apps/dav/lib/connector/sabre/file.php
+++ b/apps/dav/lib/connector/sabre/file.php
@@ -215,6 +215,8 @@ class File extends Node implements IFile {
 				}
 			}
 
+			$this->refreshInfo();
+
 			if (isset($request->server['HTTP_OC_CHECKSUM'])) {
 				$checksum = trim($request->server['HTTP_OC_CHECKSUM']);
 				$this->fileView->putFileInfo($this->path, ['checksum' => $checksum]);
@@ -457,17 +459,17 @@ class File extends Node implements IFile {
 
 				$this->fileView->changeLock($targetPath, ILockingProvider::LOCK_SHARED);
 
+				$this->emitPostHooks($exists, $targetPath);
+
+				$info = $this->fileView->getFileInfo($targetPath);
+
 				if (isset($request->server['HTTP_OC_CHECKSUM'])) {
 					$checksum = trim($request->server['HTTP_OC_CHECKSUM']);
 					$this->fileView->putFileInfo($targetPath, ['checksum' => $checksum]);
-				} else if ($this->getChecksum() !== NULL && $this->getChecksum() !== '') {
+				} else if ($info->getChecksum() !== NULL && $info->getChecksum() !== '') {
 					$this->fileView->putFileInfo($this->path, ['checksum' => '']);
 				}
-				$this->refreshInfo();
-
-				$this->emitPostHooks($exists, $targetPath);
 
-				$info = $this->fileView->getFileInfo($targetPath);
 
 				$this->fileView->unlockFile($targetPath, ILockingProvider::LOCK_SHARED);