diff --git a/apps/files_versions/lib/Command/Expire.php b/apps/files_versions/lib/Command/Expire.php index 1075314c1c..141fc52248 100644 --- a/apps/files_versions/lib/Command/Expire.php +++ b/apps/files_versions/lib/Command/Expire.php @@ -28,6 +28,8 @@ namespace OCA\Files_Versions\Command; use OC\Command\FileAccess; use OCA\Files_Versions\Storage; use OCP\Command\ICommand; +use OCP\Files\StorageNotAvailableException; +use OCP\ILogger; class Expire implements ICommand { use FileAccess; @@ -59,6 +61,20 @@ class Expire implements ICommand { return; } - Storage::expire($this->fileName, $this->user); + try { + Storage::expire($this->fileName, $this->user); + } catch (StorageNotAvailableException $e) { + // In case of external storage and session credentials, the expiration + // fails because the command does not have those credentials + + /** @var ILogger $logger */ + $logger = \OC::$server->query(ILogger::class); + + $logger->logException($e, [ + 'level' => ILogger::WARN, + 'uid' => $this->user, + 'fileName' => $this->fileName, + ]); + } } }