From ace7b69aa77e9df27e83c1eb2b3ec6bf2b93d493 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Wed, 9 Aug 2017 11:56:31 +0200 Subject: [PATCH] Fix copy from jailed storage If we have a jailed storage we must also fix the internal path on copy. Else we pass in the wrong path. Signed-off-by: Roeland Jago Douma --- lib/private/Files/Storage/Local.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index c19427e5f9b..0577093712e 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -412,6 +412,12 @@ class Local extends \OC\Files\Storage\Common { */ public function copyFromStorage(IStorage $sourceStorage, $sourceInternalPath, $targetInternalPath, $preserveMtime = false) { if ($sourceStorage->instanceOfStorage('\OC\Files\Storage\Local')) { + if ($sourceStorage->instanceOfStorage(Jail::class)) { + /** + * @var \OC\Files\Storage\Wrapper\Jail $sourceStorage + */ + $sourceInternalPath = $sourceStorage->getUnjailedPath($sourceInternalPath); + } /** * @var \OC\Files\Storage\Local $sourceStorage */