From 84c08b066359508bd3457c20187a3832c11ceceb Mon Sep 17 00:00:00 2001 From: Ilja Neumann Date: Tue, 2 Feb 2021 12:25:47 +0100 Subject: [PATCH] Remove non-empty directories recursively --- changelog/unreleased/ocis-fix-trashbin-recursive-delete.md | 5 +++++ pkg/storage/fs/ocis/recycle.go | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 changelog/unreleased/ocis-fix-trashbin-recursive-delete.md diff --git a/changelog/unreleased/ocis-fix-trashbin-recursive-delete.md b/changelog/unreleased/ocis-fix-trashbin-recursive-delete.md new file mode 100644 index 0000000000..a2fb323cc5 --- /dev/null +++ b/changelog/unreleased/ocis-fix-trashbin-recursive-delete.md @@ -0,0 +1,5 @@ +Bugfix: Purge non-empty dirs from trash-bin + +This wasn't possible before if the directory was not empty + +https://github.com/cs3org/reva/pull/1429 \ No newline at end of file diff --git a/pkg/storage/fs/ocis/recycle.go b/pkg/storage/fs/ocis/recycle.go index 0fe2072189..cc81b849d0 100644 --- a/pkg/storage/fs/ocis/recycle.go +++ b/pkg/storage/fs/ocis/recycle.go @@ -219,7 +219,7 @@ func (fs *ocisfs) PurgeRecycleItem(ctx context.Context, key string) (err error) return errtypes.PermissionDenied(key) } - if err = os.Remove(deletedNodePath); err != nil { + if err = os.RemoveAll(deletedNodePath); err != nil { log.Error().Err(err).Str("deletedNodePath", deletedNodePath).Msg("error deleting trash node") return }