diff options
| author | David Lönnhager <david.l@mullvad.net> | 2022-02-16 15:45:44 +0100 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2022-02-18 09:44:03 +0100 |
| commit | 3936923d97165b48b418a0d4e630a498e2b64739 (patch) | |
| tree | 8d3332a3b94b98e738a064399bc7d253ae0b2735 | |
| parent | e1d075ee97f8045d8ef2345eb303d7f36f5e562d (diff) | |
| download | mullvadvpn-3936923d97165b48b418a0d4e630a498e2b64739.tar.xz mullvadvpn-3936923d97165b48b418a0d4e630a498e2b64739.zip | |
Don't pointlessly write settings migration result to disk
| -rw-r--r-- | mullvad-daemon/src/migrations/mod.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mullvad-daemon/src/migrations/mod.rs b/mullvad-daemon/src/migrations/mod.rs index 73dc0f857b..9a28c41266 100644 --- a/mullvad-daemon/src/migrations/mod.rs +++ b/mullvad-daemon/src/migrations/mod.rs @@ -108,6 +108,8 @@ pub async fn migrate_all(cache_dir: &Path, settings_dir: &Path) -> Result<()> { return Err(Error::NoMatchingVersion); } + let old_settings = settings.clone(); + v1::migrate(&mut settings)?; v2::migrate(&mut settings)?; v3::migrate(&mut settings)?; @@ -117,6 +119,11 @@ pub async fn migrate_all(cache_dir: &Path, settings_dir: &Path) -> Result<()> { account_history::migrate_location(cache_dir, settings_dir).await; account_history::migrate_formats(settings_dir, &mut settings).await?; + if settings == old_settings { + // Nothing changed + return Ok(()); + } + let buffer = serde_json::to_string_pretty(&settings).map_err(Error::SerializeError)?; let mut options = fs::OpenOptions::new(); |
