Fix a crash when blocking/unblocking a user (#2143)

The view state doesn't like mutating an optional when built in release mode.
This commit is contained in:
Doug
2023-11-22 13:13:59 +00:00
committed by GitHub
parent 6c52b16a89
commit ec4aa4300a
2 changed files with 9 additions and 2 deletions

View File

@@ -254,7 +254,10 @@ class RoomDetailsScreenViewModel: RoomDetailsScreenViewModelType, RoomDetailsScr
state.isProcessingIgnoreRequest = false
switch result {
case .success:
state.dmRecipient?.isIgnored = true
// Mutating the optional in place when built for Release crashes 🤷
var dmRecipient = state.dmRecipient
dmRecipient?.isIgnored = true
state.dmRecipient = dmRecipient
case .failure, .none:
state.bindings.alertInfo = .init(id: .unknown)
}
@@ -266,7 +269,10 @@ class RoomDetailsScreenViewModel: RoomDetailsScreenViewModelType, RoomDetailsScr
state.isProcessingIgnoreRequest = false
switch result {
case .success:
state.dmRecipient?.isIgnored = false
// Mutating the optional in place when built for Release crashes 🤷
var dmRecipient = state.dmRecipient
dmRecipient?.isIgnored = false
state.dmRecipient = dmRecipient
case .failure, .none:
state.bindings.alertInfo = .init(id: .unknown)
}

1
changelog.d/2140.bugfix Normal file
View File

@@ -0,0 +1 @@
Fix a crash when blocking/unblocking a user from the DM details screen.