diff options
author | ByteHamster <info@bytehamster.com> | 2018-04-06 11:41:08 +0200 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2018-04-06 12:02:03 +0200 |
commit | cfaccef2b364abfbc1c4b0181edb2fb92e998209 (patch) | |
tree | 27d57288c4ea1504191be2fceee5488e513aa869 /core/src/main/java | |
parent | 396d9c41a623632757d836f693398bf500808dbe (diff) | |
download | AntennaPod-cfaccef2b364abfbc1c4b0181edb2fb92e998209.zip |
Actually return instance in getInstance
This probably fixes all those "db deleted" issues and mysterious NPEs
Previously, the synchronized keyword on open() and close() was useless
because it was synchronizing on different objects in each thread.
Diffstat (limited to 'core/src/main/java')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java index 5ff3f70df..99f5a466f 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java @@ -312,6 +312,7 @@ public class PodDBAdapter { private static volatile SQLiteDatabase db; private static int counter = 0; + private static PodDBAdapter instance; public static void init(Context context) { PodDBAdapter.context = context.getApplicationContext(); @@ -322,8 +323,11 @@ public class PodDBAdapter { } public static PodDBAdapter getInstance() { + if (instance == null) { + instance = new PodDBAdapter(); + } dbHelper = PodDBHelperholder.dbHelper; - return new PodDBAdapter(); + return instance; } private PodDBAdapter() { |