mirror of
https://github.com/chatmail/core.git
synced 2026-04-28 19:06:35 +03:00
Make sure that the server UIDs are reset when changing accounts
This commit is contained in:
@@ -351,6 +351,13 @@ 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?;
|
||||
|
||||
|
||||
@@ -2170,7 +2170,7 @@ async fn get_modseq(context: &Context, folder: &str) -> Result<u64> {
|
||||
}
|
||||
|
||||
/// Compute the imap search expression for all self-sent mails (for all self addresses)
|
||||
pub async fn get_imap_self_sent_search_command(context: &Context) -> Result<String> {
|
||||
pub(crate) async fn get_imap_self_sent_search_command(context: &Context) -> Result<String> {
|
||||
// See https://www.rfc-editor.org/rfc/rfc3501#section-6.4.4 for syntax of SEARCH and OR
|
||||
let mut search_command = format!("FROM {}", context.get_primary_self_addr().await?);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user