From: AsamK Date: Wed, 6 Apr 2022 20:28:07 +0000 (+0200) Subject: Prevent deleting a group locally if the user is still a member X-Git-Tag: v0.10.5~8 X-Git-Url: https://git.nmode.ca/signal-cli/commitdiff_plain/02a018462bd6d30d8b20eb4acce81238333c3640 Prevent deleting a group locally if the user is still a member Fixes #924 --- diff --git a/lib/src/main/java/org/asamk/signal/manager/ManagerImpl.java b/lib/src/main/java/org/asamk/signal/manager/ManagerImpl.java index aa4752a2..45ec09f9 100644 --- a/lib/src/main/java/org/asamk/signal/manager/ManagerImpl.java +++ b/lib/src/main/java/org/asamk/signal/manager/ManagerImpl.java @@ -348,6 +348,11 @@ class ManagerImpl implements Manager { @Override public void deleteGroup(GroupId groupId) throws IOException { + final var group = context.getGroupHelper().getGroup(groupId); + if (group.isMember(account.getSelfRecipientId())) { + throw new IOException( + "The local group information cannot be removed, as the user is still a member of the group"); + } context.getGroupHelper().deleteGroup(groupId); }