diff --git a/pkg/hicli/sync.go b/pkg/hicli/sync.go index 673dda8..1b5eaa1 100644 --- a/pkg/hicli/sync.go +++ b/pkg/hicli/sync.go @@ -111,6 +111,7 @@ func (h *HiClient) maybeDiscardOutboundSession(ctx context.Context, newMembershi } if prevMembership == newMembership || (prevMembership == event.MembershipInvite && newMembership == event.MembershipJoin) || + (prevMembership == event.MembershipJoin && newMembership == event.MembershipInvite) || (prevMembership == event.MembershipBan && newMembership == event.MembershipLeave) || (prevMembership == event.MembershipLeave && newMembership == event.MembershipBan) { return false