diff --git a/ts/receiver/closedGroups.ts b/ts/receiver/closedGroups.ts index 92c9f2091..e08ead7bc 100644 --- a/ts/receiver/closedGroups.ts +++ b/ts/receiver/closedGroups.ts @@ -30,6 +30,7 @@ import { queueAllCachedFromSource } from './receiver'; import { ConversationTypeEnum } from '../models/types'; import { NetworkTime } from '../util/NetworkTime'; import { MessageQueue } from '../session/sending'; +import { areLegacyGroupsReadOnlyOutsideRedux } from '../state/selectors/releasedFeatures'; export const distributingClosedGroupEncryptionKeyPairs = new Map(); @@ -255,6 +256,12 @@ export async function handleNewClosedGroup( if (groupUpdate.type !== SignalService.DataMessage.ClosedGroupControlMessage.Type.NEW) { return; } + + if (areLegacyGroupsReadOnlyOutsideRedux()) { + window?.log?.info('Got legacy group invite message, but they are readonly now. Dropping.'); + await IncomingMessageCache.removeFromCache(envelope); + return; + } if (!sanityCheckNewGroup(groupUpdate)) { window?.log?.warn('Sanity check for newGroup failed, dropping the message...'); await IncomingMessageCache.removeFromCache(envelope);