From eb84ab84393411d7f020e6fa1f0cf9cdb71a134b Mon Sep 17 00:00:00 2001 From: AntsyLich <59261191+antsylich@users.noreply.github.com> Date: Sun, 14 Jun 2026 00:14:16 +0600 Subject: [PATCH] Ensure old extension store is removed if index url changes (mihonapp/mihon#3408) (cherry picked from commit c15f7bee85b8fbe258abe81433730aa5bcba58a1) --- .../extension/repository/ExtensionStoreRepositoryImpl.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/data/src/main/java/mihon/data/extension/repository/ExtensionStoreRepositoryImpl.kt b/data/src/main/java/mihon/data/extension/repository/ExtensionStoreRepositoryImpl.kt index 9be97b8f5..71bb959dd 100644 --- a/data/src/main/java/mihon/data/extension/repository/ExtensionStoreRepositoryImpl.kt +++ b/data/src/main/java/mihon/data/extension/repository/ExtensionStoreRepositoryImpl.kt @@ -40,7 +40,14 @@ class ExtensionStoreRepositoryImpl( extension_storeQueries.getAll() }.forEach { store -> service.fetch(store.index_url) - .mapCatching { upsert(it) } + .mapCatching { + handler.await { + upsert(it) + if (store.index_url != it.indexUrl) { + extension_storeQueries.delete(store.index_url) + } + } + } .onFailure { logcat(LogPriority.ERROR, it) { "Failed to refresh extension store '${store.name} (${store.index_url})'"