diff --git a/ElementX/Sources/Screens/RoomDetailsScreen/RoomDetailsScreenViewModel.swift b/ElementX/Sources/Screens/RoomDetailsScreen/RoomDetailsScreenViewModel.swift index f38b3c5ba..36d2d0c87 100644 --- a/ElementX/Sources/Screens/RoomDetailsScreen/RoomDetailsScreenViewModel.swift +++ b/ElementX/Sources/Screens/RoomDetailsScreen/RoomDetailsScreenViewModel.swift @@ -223,8 +223,8 @@ class RoomDetailsScreenViewModel: RoomDetailsScreenViewModelType, RoomDetailsScr .store(in: &cancellables) roomProxy.membersPublisher.combineLatest(roomProxy.identityStatusChangesPublisher) - .sink { _ in - Task { await self.updateMemberIdentityVerificationStates() } + .sink { [weak self] _ in + Task { await self?.updateMemberIdentityVerificationStates() } } .store(in: &cancellables) } diff --git a/ElementX/Sources/Screens/RoomMemberDetailsScreen/RoomMemberDetailsScreenViewModel.swift b/ElementX/Sources/Screens/RoomMemberDetailsScreen/RoomMemberDetailsScreenViewModel.swift index 0784d4d59..3855d85ba 100644 --- a/ElementX/Sources/Screens/RoomMemberDetailsScreen/RoomMemberDetailsScreenViewModel.swift +++ b/ElementX/Sources/Screens/RoomMemberDetailsScreen/RoomMemberDetailsScreenViewModel.swift @@ -47,9 +47,9 @@ class RoomMemberDetailsScreenViewModel: RoomMemberDetailsScreenViewModelType, Ro roomProxy.identityStatusChangesPublisher .receive(on: DispatchQueue.main) - .sink { changes in + .sink { [weak self] changes in if changes.map(\.userId).contains(userID) { - Task { await self.loadMember() } + Task { await self?.loadMember() } } } .store(in: &cancellables)