SENSITIVE_KEYS and SENSITIVE_KEY_STRINGS used eager initialization in the
companion object. When E2EEKeyManager.hasKeyPair() was the first access to
SettingsKey, it triggered SettingsKey.<clinit> which tried to resolve
StringKey.E2EEPrivateKeyset - but that class was already 'in initialization
by the current thread' (JVM spec). The JVM returned null, causing NPE in
SENSITIVE_KEY_STRINGS.map { it.key }.
Fix: use by lazy for both properties to defer initialization past <clinit>.
|
||
|---|---|---|
| .. | ||
| schemas/de.bollwerk.app.data.db.BollwerkDatabase | ||
| src | ||
| build.gradle.kts | ||
| proguard-rules.pro | ||