Skip to content

Commit 692b4fa

Browse files
committed
Fix request blocklist update race and remove debug print
1 parent 027992a commit 692b4fa

File tree

1 file changed

+3
-6
lines changed
  • privacy-config/privacy-config-impl/src/main/java/com/duckduckgo/privacy/config/impl/features/requestblocklist

1 file changed

+3
-6
lines changed

privacy-config/privacy-config-impl/src/main/java/com/duckduckgo/privacy/config/impl/features/requestblocklist/RealRequestBlocklist.kt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ import kotlinx.coroutines.CoroutineScope
3232
import kotlinx.coroutines.launch
3333
import logcat.logcat
3434
import okhttp3.HttpUrl.Companion.toHttpUrlOrNull
35-
import java.util.concurrent.ConcurrentHashMap
3635
import javax.inject.Inject
3736

3837
@SingleInstanceIn(AppScope::class)
@@ -45,7 +44,7 @@ class RealRequestBlocklist @Inject constructor(
4544
@AppCoroutineScope private val appCoroutineScope: CoroutineScope,
4645
) : RequestBlocklist, PrivacyConfigCallbackPlugin {
4746

48-
private val blockedRequests = ConcurrentHashMap<String, List<BlocklistRuleEntity>>()
47+
@Volatile private var blockedRequests: Map<String, List<BlocklistRuleEntity>> = emptyMap()
4948

5049
init {
5150
if (isMainProcess) {
@@ -77,7 +76,7 @@ class RealRequestBlocklist @Inject constructor(
7776

7877
private fun loadToMemory() {
7978
appCoroutineScope.launch(dispatchers.io()) {
80-
val newBlockedRequests = ConcurrentHashMap<String, List<BlocklistRuleEntity>>()
79+
val newBlockedRequests = mutableMapOf<String, List<BlocklistRuleEntity>>()
8180

8281
requestBlocklistFeature.self().getSettings()?.let { settingsJson ->
8382
runCatching {
@@ -101,9 +100,7 @@ class RealRequestBlocklist @Inject constructor(
101100
}
102101
}
103102

104-
blockedRequests.clear()
105-
blockedRequests.putAll(newBlockedRequests)
106-
println(blockedRequests)
103+
blockedRequests = newBlockedRequests.toMap()
107104
}
108105
}
109106

0 commit comments

Comments
 (0)