From 13371fbeb7c5f8319f0791313bd5bf4a6f8706e1 Mon Sep 17 00:00:00 2001 From: Scott Nonnenberg Date: Tue, 8 Jun 2021 11:54:20 -0700 Subject: [PATCH] Don't delete all data if e164 changes (focus on UUID if we have it) --- ts/textsecure/AccountManager.ts | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/ts/textsecure/AccountManager.ts b/ts/textsecure/AccountManager.ts index c4d6cf5a6f..4c5f7c46ba 100644 --- a/ts/textsecure/AccountManager.ts +++ b/ts/textsecure/AccountManager.ts @@ -538,20 +538,23 @@ export default class AccountManager extends EventTarget { { accessKey } ); - const numberChanged = previousNumber && previousNumber !== number; const uuidChanged = previousUuid && uuid && previousUuid !== uuid; - if (numberChanged || uuidChanged) { - if (numberChanged) { - window.log.warn( - 'New number is different from old number; deleting all previous data' - ); - } + // We only consider the number changed if we didn't have a UUID before + const numberChanged = + !previousUuid && previousNumber && previousNumber !== number; + + if (uuidChanged || numberChanged) { if (uuidChanged) { window.log.warn( 'New uuid is different from old uuid; deleting all previous data' ); } + if (numberChanged) { + window.log.warn( + 'New number is different from old number; deleting all previous data' + ); + } try { await window.textsecure.storage.protocol.removeAllData();