diff --git a/lib/private/Files/Storage/Common.php b/lib/private/Files/Storage/Common.php index d2a344a8217aa..cff19e33dcef0 100644 --- a/lib/private/Files/Storage/Common.php +++ b/lib/private/Files/Storage/Common.php @@ -108,13 +108,14 @@ public function __construct($parameters) { * @return bool */ protected function remove($path) { - if ($this->is_dir($path)) { - return $this->rmdir($path); - } elseif ($this->is_file($path)) { - return $this->unlink($path); - } else { - return false; + if ($this->file_exists($path)) { + if ($this->is_dir($path)) { + return $this->rmdir($path); + } elseif ($this->is_file($path)) { + return $this->unlink($path); + } } + return false; } public function is_dir($path) { diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index ca2113add75d0..8fec24996891f 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -380,10 +380,12 @@ public function rename($source, $target): bool { return false; } - if ($this->is_dir($target)) { - $this->rmdir($target); - } elseif ($this->is_file($target)) { - $this->unlink($target); + if ($this->file_exists($target)) { + if ($this->is_dir($target)) { + $this->rmdir($target); + } elseif ($this->is_file($target)) { + $this->unlink($target); + } } if ($this->is_dir($source)) {