aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/proguard-rules.pro3
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.kt7
2 files changed, 9 insertions, 1 deletions
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 7d91e92d..4371d26b 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -21,3 +21,6 @@
-dontwarn com.google.common.**
-dontwarn org.slf4j.**
-keep class androidx.appcompat.widget.SearchView { *; }
+-keep class org.openintents.openpgp.**
+-keepattributes SourceFile,LineNumberTable
+-dontobfuscate
diff --git a/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.kt b/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.kt
index d10a5d59..e0bf9857 100644
--- a/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.kt
+++ b/app/src/main/java/com/zeapo/pwdstore/utils/PasswordRepository.kt
@@ -140,6 +140,9 @@ open class PasswordRepository protected constructor() {
@JvmStatic
fun getRepositoryDirectory(context: Context): File {
+ if (!::settings.isInitialized) {
+ settings = PreferenceManager.getDefaultSharedPreferences(context.applicationContext)
+ }
return if (settings.getBoolean("git_external", false)) {
val externalRepo = settings.getString("git_external_repo", null)
File(requireNotNull(externalRepo))
@@ -150,7 +153,9 @@ open class PasswordRepository protected constructor() {
@JvmStatic
fun initialize(context: Context): Repository? {
- settings = PreferenceManager.getDefaultSharedPreferences(context.applicationContext)
+ if (!::settings.isInitialized) {
+ settings = PreferenceManager.getDefaultSharedPreferences(context.applicationContext)
+ }
val dir = getRepositoryDirectory(context)
// uninitialize the repo if the dir does not exist or is absolutely empty
if (!dir.exists() || !dir.isDirectory || dir.listFiles()!!.isEmpty()) {