]> source.dussan.org Git - nextcloud-server.git/commitdiff
Improve typing in FixEncryptedVersion command
authorCôme Chilliet <come.chilliet@nextcloud.com>
Tue, 2 Aug 2022 10:11:15 +0000 (12:11 +0200)
committerbackportbot-nextcloud[bot] <backportbot-nextcloud[bot]@users.noreply.github.com>
Mon, 22 Aug 2022 09:16:16 +0000 (09:16 +0000)
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
apps/encryption/lib/Command/FixEncryptedVersion.php

index 073c1f1438a886593c122ccdadc44e42b3dfeca4..b3c0d8c4d1692597bdf55321fb3a8bbccfd101ee 100644 (file)
@@ -94,11 +94,6 @@ class FixEncryptedVersion extends Command {
                        );
        }
 
-       /**
-        * @param InputInterface $input
-        * @param OutputInterface $output
-        * @return int
-        */
        protected function execute(InputInterface $input, OutputInterface $output): int {
                $skipSignatureCheck = $this->config->getSystemValue('encryption_skip_signature_check', false);
                $this->supportLegacy = $this->config->getSystemValueBool('encryption.legacy_format_support', false);
@@ -121,7 +116,7 @@ class FixEncryptedVersion extends Command {
                        $pathToWalk = "$pathToWalk/$pathOption";
                }
 
-               if ($user === null) {
+               if ($user === '') {
                        $output->writeln("<error>No user id provided.</error>\n");
                        return 1;
                }
@@ -134,12 +129,9 @@ class FixEncryptedVersion extends Command {
        }
 
        /**
-        * @param string $user
-        * @param string $path
-        * @param OutputInterface $output
         * @return int 0 for success, 1 for error
         */
-       private function walkPathOfUser($user, $path, OutputInterface $output): int {
+       private function walkPathOfUser(string $user, string $path, OutputInterface $output): int {
                $this->setupUserFs($user);
                if (!$this->view->file_exists($path)) {
                        $output->writeln("<error>Path \"$path\" does not exist. Please provide a valid path.</error>");
@@ -169,11 +161,9 @@ class FixEncryptedVersion extends Command {
        }
 
        /**
-        * @param string $path
-        * @param OutputInterface $output
         * @param bool $ignoreCorrectEncVersionCall, setting this variable to false avoids recursion
         */
-       private function verifyFileContent($path, OutputInterface $output, $ignoreCorrectEncVersionCall = true): bool {
+       private function verifyFileContent(string $path, OutputInterface $output, bool $ignoreCorrectEncVersionCall = true): bool {
                try {
                        /**
                         * In encryption, the files are read in a block size of 8192 bytes
@@ -201,9 +191,9 @@ class FixEncryptedVersion extends Command {
                        return false;
                } catch (HintException $e) {
                        $this->logger->warning("Issue: " . $e->getMessage());
-                       //If allowOnce is set to false, this becomes recursive.
+                       // If allowOnce is set to false, this becomes recursive.
                        if ($ignoreCorrectEncVersionCall === true) {
-                               //Lets rectify the file by correcting encrypted version
+                               // Lets rectify the file by correcting encrypted version
                                $output->writeln("<info>Attempting to fix the path: \"$path\"</info>");
                                return $this->correctEncryptedVersion($path, $output);
                        }
@@ -212,18 +202,19 @@ class FixEncryptedVersion extends Command {
        }
 
        /**
-        * @param string $path
-        * @param OutputInterface $output
         * @param bool $includeZero whether to try zero version for unencrypted file
-        * @return bool
         */
-       private function correctEncryptedVersion($path, OutputInterface $output, bool $includeZero = false): bool {
+       private function correctEncryptedVersion(string $path, OutputInterface $output, bool $includeZero = false): bool {
                $fileInfo = $this->view->getFileInfo($path);
                if (!$fileInfo) {
                        $output->writeln("<warning>File info not found for file: \"$path\"</warning>");
                        return true;
                }
                $fileId = $fileInfo->getId();
+               if ($fileId === null) {
+                       $output->writeln("<warning>File info contains no id for file: \"$path\"</warning>");
+                       return true;
+               }
                $encryptedVersion = $fileInfo->getEncryptedVersion();
                $wrongEncryptedVersion = $encryptedVersion;
 
@@ -255,7 +246,7 @@ class FixEncryptedVersion extends Command {
                                }
                        }
 
-                       //test by decrementing the value till 1 and if nothing works try incrementing
+                       // Test by decrementing the value till 1 and if nothing works try incrementing
                        $encryptedVersion--;
                        while ($encryptedVersion > 0) {
                                $cacheInfo = ['encryptedVersion' => $encryptedVersion, 'encrypted' => $encryptedVersion];
@@ -268,7 +259,7 @@ class FixEncryptedVersion extends Command {
                                $encryptedVersion--;
                        }
 
-                       //So decrementing did not work. Now lets increment. Max increment is till 5
+                       // So decrementing did not work. Now lets increment. Max increment is till 5
                        $increment = 1;
                        while ($increment <= 5) {
                                /**
@@ -301,9 +292,8 @@ class FixEncryptedVersion extends Command {
 
        /**
         * Setup user file system
-        * @param string $uid
         */
-       private function setupUserFs($uid): void {
+       private function setupUserFs(string $uid): void {
                \OC_Util::tearDownFS();
                \OC_Util::setupFS($uid);
        }