From 7db947eba24a3f6c4256d515429fb6f5179b13a9 Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Wed, 10 Sep 2025 00:14:47 +0200 Subject: [PATCH] Restore server settings first (#1637) The imported server settings might cause the active database to change. In case this happens, the backup was restored into the wrong database. --- .../impl/backup/proto/ProtoBackupImport.kt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/backup/proto/ProtoBackupImport.kt b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/backup/proto/ProtoBackupImport.kt index 8e9246cb..f33a6e01 100644 --- a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/backup/proto/ProtoBackupImport.kt +++ b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/backup/proto/ProtoBackupImport.kt @@ -197,23 +197,23 @@ object ProtoBackupImport : ProtoBackupBase() { val getRestoreAmount = { size: Int -> size + restoreCategories + restoreMeta + restoreSettings } val restoreAmount = getRestoreAmount(backup.backupManga.size) - updateRestoreState(id, BackupRestoreState.RestoringCategories(restoreCategories, restoreAmount)) + updateRestoreState( + id, + BackupRestoreState.RestoringSettings(restoreSettings, restoreAmount), + ) + + BackupSettingsHandler.restore(backup.serverSettings) + + updateRestoreState(id, BackupRestoreState.RestoringCategories(restoreSettings + restoreCategories, restoreAmount)) val categoryMapping = restoreCategories(backup.backupCategories) - updateRestoreState(id, BackupRestoreState.RestoringMeta(restoreCategories + restoreMeta, restoreAmount)) + updateRestoreState(id, BackupRestoreState.RestoringMeta(restoreSettings + restoreCategories + restoreMeta, restoreAmount)) restoreGlobalMeta(backup.meta) restoreSourceMeta(backup.backupSources) - updateRestoreState( - id, - BackupRestoreState.RestoringSettings(restoreCategories + restoreMeta + restoreSettings, restoreAmount), - ) - - BackupSettingsHandler.restore(backup.serverSettings) - // Store source mapping for error messages val sourceMapping = backup.getSourceMap()