From c47cfefec030153645c243542065f3b2c6e793cf Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 26 Nov 2023 14:35:26 +0100 Subject: mod_storage_internal: Close lazy-loading list abstraction after trim Should be done here too. --- plugins/mod_storage_internal.lua | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'plugins') diff --git a/plugins/mod_storage_internal.lua b/plugins/mod_storage_internal.lua index 35d3269f..8c0b4e11 100644 --- a/plugins/mod_storage_internal.lua +++ b/plugins/mod_storage_internal.lua @@ -360,6 +360,9 @@ function archive:trim(username, to_when) -- shortcut: check if the last item should be trimmed, if so, drop the whole archive local last = list[#list].when or datetime.parse(list[#list].attr.stamp); if last <= to_when then + if list.close then + list:close() + end return datamanager.list_store(username, host, self.store, nil); end @@ -368,6 +371,9 @@ function archive:trim(username, to_when) local when = item.when or datetime.parse(item.attr.stamp); return to_when - when; end); + if list.close then + list:close() + end -- TODO if exact then ... off by one? if i == 1 then return 0; end local ok, err = datamanager.list_shift(username, host, self.store, i); -- cgit v1.2.3