From 2b37dc9c9e2c60461057e72a295eef7fdda6e8b4 Mon Sep 17 00:00:00 2001 From: Steven Bühner Date: Mon, 5 Sep 2016 14:24:04 +0200 Subject: Always use the same relative Path (Starting from users home dir. i.e.: "/files_trashbin/...") --- apps/files_trashbin/lib/Trashbin.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/apps/files_trashbin/lib/Trashbin.php b/apps/files_trashbin/lib/Trashbin.php index 4a4ff190edf..7c3797f420c 100644 --- a/apps/files_trashbin/lib/Trashbin.php +++ b/apps/files_trashbin/lib/Trashbin.php @@ -472,8 +472,12 @@ class Trashbin { $view = new View('/' . $user); $fileInfos = $view->getDirectoryContent('files_trashbin/files'); - foreach($fileInfos as $fileInfo){ - $path = $view->getRelativePath($fileInfo->getPath()); + // Array to store the relative path in (after the file is deleted, the view won't be able to relativise the path anymore) + $filePaths = array(); + + foreach($fileInfos as $key => $fileInfo){ + $filePaths[] = $path = $view->getRelativePath($fileInfo->getPath()); + unset($fileInfo[$key]); // save memory self::emitTrashbinPreDelete($path); } @@ -481,8 +485,7 @@ class Trashbin { $query = \OC_DB::prepare('DELETE FROM `*PREFIX*files_trash` WHERE `user`=?'); $query->execute(array($user)); - foreach($fileInfos as $fileInfo){ - $path = $view->getRelativePath($fileInfo->getPath()); + foreach($filePaths as $path){ self::emitTrashbinPostDelete($path); } -- cgit v1.2.3