From 83741da83af1f361605aeba6f3c884fcfa5fc755 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 14 May 2017 17:22:33 +0200 Subject: mod_storage_internal: Correctly calculate number of deleted items (fixes #912) --- plugins/mod_storage_internal.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'plugins/mod_storage_internal.lua') diff --git a/plugins/mod_storage_internal.lua b/plugins/mod_storage_internal.lua index 21a63c95..94d73af7 100644 --- a/plugins/mod_storage_internal.lua +++ b/plugins/mod_storage_internal.lua @@ -141,10 +141,11 @@ function archive:delete(username, query) local items, err = datamanager.list_load(username, host, self.store); if not items then return items, err; end items = array(items); + local count_before = #items; items:filter(function (item) return item.when > query["end"]; end); - local count = #items; + local count = count_before - #items; local ok, err = datamanager.list_store(username, host, self.store, items); if not ok then return ok, err; end return count; -- cgit v1.2.3 From d7789712dab1431eafbf00a8f3bb68e45738bc86 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 14 May 2017 17:31:50 +0200 Subject: mod_storage_internal: Handle case of empty item store when deleting (fixes #910) --- plugins/mod_storage_internal.lua | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'plugins/mod_storage_internal.lua') diff --git a/plugins/mod_storage_internal.lua b/plugins/mod_storage_internal.lua index 94d73af7..0a382cee 100644 --- a/plugins/mod_storage_internal.lua +++ b/plugins/mod_storage_internal.lua @@ -139,7 +139,13 @@ function archive:delete(username, query) if k ~= "end" then return nil, "unsupported-query-field"; end end local items, err = datamanager.list_load(username, host, self.store); - if not items then return items, err; end + if not items then + if err then + return items, err; + end + -- Store is empty + return 0; + end items = array(items); local count_before = #items; items:filter(function (item) -- cgit v1.2.3