From 19602b0e686fb4a3631f5959f5bfe2e16512f91e Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Fri, 18 Oct 2024 13:46:04 -0400 Subject: [PATCH] Fix reregistration lost state bug. --- .../securesms/registration/ui/RegistrationViewModel.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt index 60bed7ead7..9044b81322 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt @@ -680,10 +680,14 @@ class RegistrationViewModel : ViewModel() { */ private suspend fun registerAccountInternal(context: Context, sessionId: String?, registrationData: RegistrationData, pin: String?, masterKey: MasterKey): Pair { Log.v(TAG, "registerAccountInternal()") - val registrationResult: RegisterAccountResult = RegistrationRepository.registerAccount(context = context, sessionId = sessionId, registrationData = registrationData, pin = pin) + var registrationResult: RegisterAccountResult = RegistrationRepository.registerAccount(context = context, sessionId = sessionId, registrationData = registrationData, pin = pin) // Check if reg lock is enabled if (registrationResult !is RegisterAccountResult.RegistrationLocked) { + if (registrationResult is RegisterAccountResult.Success) { + registrationResult = RegisterAccountResult.Success(registrationResult.accountRegistrationResult.copy(masterKey = masterKey)) + } + Log.i(TAG, "Received a non-registration lock response to registration. Assuming registration lock as DISABLED") return Pair(registrationResult, false) }