diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/AccountValues.kt b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/AccountValues.kt index 86addb46ed..9020f22fac 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/AccountValues.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/AccountValues.kt @@ -362,7 +362,14 @@ internal class AccountValues internal constructor(store: KeyValueStore) : Signal get() = !isPrimaryDevice /** The local user's full username (nickname.discriminator), if set. */ - var username: String? by stringValue(KEY_USERNAME, null) + var username: String? + get() { + val value = getString(KEY_USERNAME, null) + return if (value.isNullOrBlank()) null else value + } + set(value) { + putString(KEY_USERNAME, value) + } /** The local user's username link components, if set. */ var usernameLink: UsernameLinkComponents? diff --git a/app/src/main/java/org/thoughtcrime/securesms/migrations/CopyUsernameToSignalStoreMigrationJob.kt b/app/src/main/java/org/thoughtcrime/securesms/migrations/CopyUsernameToSignalStoreMigrationJob.kt index 81aef555ba..0eb6e23530 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/migrations/CopyUsernameToSignalStoreMigrationJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/migrations/CopyUsernameToSignalStoreMigrationJob.kt @@ -32,7 +32,7 @@ internal class CopyUsernameToSignalStoreMigrationJob( val self = Recipient.self() - if (self.username.isEmpty) { + if (self.username.isEmpty || self.username.get().isBlank()) { Log.i(TAG, "No username set, skipping.") return }