From b343a74e9c3bfc70b5b00eca5047ff0a5043d2a6 Mon Sep 17 00:00:00 2001 From: Kent Delante Date: Wed, 24 Jun 2026 16:59:55 +0800 Subject: [PATCH] fix(versions): preserve version encrypted version before rollback Signed-off-by: Kent Delante --- apps/files_versions/lib/Storage.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/apps/files_versions/lib/Storage.php b/apps/files_versions/lib/Storage.php index cf49e5a1d4d26..4e303c954d05e 100644 --- a/apps/files_versions/lib/Storage.php +++ b/apps/files_versions/lib/Storage.php @@ -374,6 +374,17 @@ public static function rollback(string $file, int $revision, IUser $user) { $version = 'files_versions' . $filename . '.v' . $users_view->filemtime('files' . $filename); if (!$users_view->file_exists($version)) { $users_view->copy('files' . $filename, 'files_versions' . $filename . '.v' . $users_view->filemtime('files' . $filename)); + + $encryptedVersion = $fileInfo->getEncryptedVersion(); + $versionFileInfo = $users_view->getFileInfo($version); + $versionCache = $versionFileInfo->getStorage()->getCache(); + $versionCache->update( + $versionFileInfo->getId(), [ + 'encrypted' => $encryptedVersion, + 'encryptedVersion' => $encryptedVersion, + ] + ); + $versionCreated = true; }