schedule_resync() instead of deleting imap_sync

This commit is contained in:
Hocuri
2022-04-22 17:32:27 +02:00
committed by holger krekel
parent 18126b42cb
commit 6ae9e43183
2 changed files with 6 additions and 7 deletions

View File

@@ -351,13 +351,6 @@ impl Context {
pub(crate) async fn set_primary_self_addr(&self, primary_new: &str) -> Result<()> {
let primary_new = addr_normalize(primary_new).to_lowercase();
if self.get_primary_self_addr().await.ok().as_deref() != Some(&primary_new) {
// Make sure that all server UIDs will be resynced
self.sql
.execute("DELETE FROM imap_sync;", paramsv![])
.await?;
}
// add old primary address (if exists) to secondary addresses
let mut secondary_addrs = self.get_all_self_addrs().await?;

View File

@@ -453,6 +453,12 @@ async fn configure(ctx: &Context, param: &mut LoginParam) -> Result<()> {
drop(imap);
progress!(ctx, 910);
if ctx.get_primary_self_addr().await.ok().as_deref() != Some(&param.addr) {
// Switched account, all server UIDs we know are invalid
job::schedule_resync(ctx).await?;
}
// the trailing underscore is correct
param.save_as_configured_params(ctx).await?;
ctx.set_config(Config::ConfiguredTimestamp, Some(&time().to_string()))