From 8140d90826724146162ea713cee34aae7d1a8200 Mon Sep 17 00:00:00 2001 From: Florian Renaud Date: Mon, 8 Nov 2021 15:36:29 +0100 Subject: [PATCH] Fix potential NPE on Optional objects --- changelog.d/4428.bugfix | 1 + .../session/room/accountdata/RoomAccountDataDataSource.kt | 2 +- .../session/user/accountdata/UserAccountDataDataSource.kt | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 changelog.d/4428.bugfix diff --git a/changelog.d/4428.bugfix b/changelog.d/4428.bugfix new file mode 100644 index 0000000000..381f246fee --- /dev/null +++ b/changelog.d/4428.bugfix @@ -0,0 +1 @@ +Fix potential NullPointerException crashes in Room and User account data sources diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/accountdata/RoomAccountDataDataSource.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/accountdata/RoomAccountDataDataSource.kt index 0e4493846c..d96beed3f1 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/accountdata/RoomAccountDataDataSource.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/accountdata/RoomAccountDataDataSource.kt @@ -43,7 +43,7 @@ internal class RoomAccountDataDataSource @Inject constructor(@SessionDatabase pr fun getLiveAccountDataEvent(roomId: String, type: String): LiveData> { return Transformations.map(getLiveAccountDataEvents(roomId, setOf(type))) { - it.firstOrNull()?.toOptional() + it.firstOrNull().toOptional() } } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/user/accountdata/UserAccountDataDataSource.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/user/accountdata/UserAccountDataDataSource.kt index b36bdc80f8..2c3d660333 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/user/accountdata/UserAccountDataDataSource.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/user/accountdata/UserAccountDataDataSource.kt @@ -41,7 +41,7 @@ internal class UserAccountDataDataSource @Inject constructor(@SessionDatabase pr fun getLiveAccountDataEvent(type: String): LiveData> { return Transformations.map(getLiveAccountDataEvents(setOf(type))) { - it.firstOrNull()?.toOptional() + it.firstOrNull().toOptional() } }