From e3a0e646980b6f75b904e21bf127868aa8e2d66c Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 30 Nov 2022 15:11:27 +0100 Subject: clear is-encrypted cache when trying to fix encrypted version Signed-off-by: Robin Appelman --- apps/encryption/lib/Command/FixEncryptedVersion.php | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'apps/encryption/lib/Command/FixEncryptedVersion.php') diff --git a/apps/encryption/lib/Command/FixEncryptedVersion.php b/apps/encryption/lib/Command/FixEncryptedVersion.php index ab9cc528c54..bed56c3306f 100644 --- a/apps/encryption/lib/Command/FixEncryptedVersion.php +++ b/apps/encryption/lib/Command/FixEncryptedVersion.php @@ -22,6 +22,7 @@ namespace OCA\Encryption\Command; +use OC\Files\Storage\Wrapper\Encryption; use OC\Files\View; use OC\ServerNotAvailableException; use OCA\Encryption\Util; @@ -165,6 +166,13 @@ class FixEncryptedVersion extends Command { */ private function verifyFileContent(string $path, OutputInterface $output, bool $ignoreCorrectEncVersionCall = true): bool { try { + // since we're manually poking around the encrypted state we need to ensure that this isn't cached in the encryption wrapper + $mount = $this->view->getMount($path); + $storage = $mount->getStorage(); + if ($storage && $storage->instanceOfStorage(Encryption::class)) { + $storage->clearIsEncryptedCache(); + } + /** * In encryption, the files are read in a block size of 8192 bytes * Read block size of 8192 and a bit more (808 bytes) -- cgit v1.2.3