From 5ad7f5396e4c45441c9e2f9e930411b26274383f Mon Sep 17 00:00:00 2001 From: Himanshu-Kandwal Date: Sun, 9 Nov 2025 10:12:07 +0530 Subject: [PATCH] fix: ensuring room DB instance is created only once by double-checked locking to AppDatabase singleton initialization --- app/src/main/java/org/nsh07/pomodoro/data/AppDatabase.kt | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/nsh07/pomodoro/data/AppDatabase.kt b/app/src/main/java/org/nsh07/pomodoro/data/AppDatabase.kt index 83fa1ab..0694d6f 100644 --- a/app/src/main/java/org/nsh07/pomodoro/data/AppDatabase.kt +++ b/app/src/main/java/org/nsh07/pomodoro/data/AppDatabase.kt @@ -17,9 +17,7 @@ import androidx.room.TypeConverters @Database( entities = [IntPreference::class, BooleanPreference::class, StringPreference::class, Stat::class], version = 2, - autoMigrations = [ - AutoMigration(from = 1, to = 2) - ] + autoMigrations = [AutoMigration(from = 1, to = 2)] ) @TypeConverters(Converters::class) abstract class AppDatabase : RoomDatabase() { @@ -34,9 +32,8 @@ abstract class AppDatabase : RoomDatabase() { fun getDatabase(context: Context): AppDatabase { return Instance ?: synchronized(this) { - Room.databaseBuilder(context, AppDatabase::class.java, "app_database") - .build() - .also { Instance = it } + Instance ?: Room.databaseBuilder(context, AppDatabase::class.java, "app_database") + .build().also { Instance = it } } } }