From ed41e416e269fc5317d09888aed0c64f90020206 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 26 Mar 2024 18:50:25 -0400 Subject: [PATCH] fix: #12446, fix groups.ownership.rescind --- src/groups/ownership.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/groups/ownership.js b/src/groups/ownership.js index ade58e65c9..c7ae09ae2d 100644 --- a/src/groups/ownership.js +++ b/src/groups/ownership.js @@ -28,8 +28,10 @@ module.exports = function (Groups) { Groups.ownership.rescind = async function (toUid, groupName) { // If the owners set only contains one member (and toUid is that member), error out! - const numOwners = await db.setCount(`group:${groupName}:owners`); - const isOwner = await db.isSortedSetMember(`group:${groupName}:owners`); + const [numOwners, isOwner] = await Promise.all([ + db.setCount(`group:${groupName}:owners`), + db.isSetMember(`group:${groupName}:owners`, toUid), + ]); if (numOwners <= 1 && isOwner) { throw new Error('[[error:group-needs-owner]]'); }