From 2f280fb4818999337de1a555d6e8913f3c7eef57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20M=C3=BCller?= Date: Sat, 14 Sep 2024 13:43:52 +0200 Subject: [PATCH] Consider saved revisions during pad cleanup --- src/node/utils/Cleanup.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/node/utils/Cleanup.ts b/src/node/utils/Cleanup.ts index 31d2ec5f5..7e480020d 100644 --- a/src/node/utils/Cleanup.ts +++ b/src/node/utils/Cleanup.ts @@ -74,6 +74,17 @@ exports.deleteRevisions = async (padId: string, keepRevisions: number): Promise< let padContent = await db.get(`pad:${padId}`) padContent.head = keepRevisions + if (padContent.savedRevisions) { + let newSavedRevisions = [] + + for (let i = 0; i < padContent.savedRevisions.length; i++) { + if (padContent.savedRevisions[i].revNum > cleanupUntilRevision) { + padContent.savedRevisions[i].revNum = padContent.savedRevisions[i].revNum - cleanupUntilRevision + newSavedRevisions.push(padContent.savedRevisions[i]) + } + } + padContent.savedRevisions = newSavedRevisions + } await db.set(`pad:${padId}`, padContent); let newAText = Changeset.makeAText('\n');