From a9e6eba018eb8cbd552fef51380cbbfff8c29783 Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Wed, 18 Mar 2015 19:22:15 +0100 Subject: [PATCH] Reenable trashbin after failed rename After a failed rename, the post_rename hook is not called. This quickfix makes sure the trashbin storage logic is reenabled also after a failed rename. --- apps/files_trashbin/lib/storage.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/apps/files_trashbin/lib/storage.php b/apps/files_trashbin/lib/storage.php index 175889ef95..d15b136924 100644 --- a/apps/files_trashbin/lib/storage.php +++ b/apps/files_trashbin/lib/storage.php @@ -61,6 +61,22 @@ class Storage extends Wrapper { self::$disableTrash = false; } + /** + * Rename path1 to path2 by calling the wrapped storage. + * + * @param string $path1 first path + * @param string $path2 second path + */ + public function rename($path1, $path2) { + $result = $this->storage->rename($path1, $path2); + if ($result === false) { + // when rename failed, the post_rename hook isn't triggered, + // but we still want to reenable the trash logic + self::$disableTrash = false; + } + return $result; + } + /** * Deletes the given file by moving it into the trashbin. *