Skip to content

Commit e33f6c1

Browse files
Alexander Krotovlink2xt
Alexander Krotov
authored and
link2xt
committed
Schedule resync job when DeleteServerAfter option is set
1 parent b4c85c5 commit e33f6c1

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

src/config.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use crate::constants::DC_VERSION_STR;
99
use crate::context::Context;
1010
use crate::dc_tools::*;
1111
use crate::events::EventType;
12+
use crate::job;
1213
use crate::message::MsgId;
1314
use crate::mimefactory::RECOMMENDED_FILE_SIZE;
1415
use crate::stock::StockMessage;
@@ -236,6 +237,11 @@ impl Context {
236237
let value = value.map(improve_single_line_input);
237238
self.sql.set_raw_config(self, key, value.as_deref()).await
238239
}
240+
Config::DeleteServerAfter => {
241+
let ret = self.sql.set_raw_config(self, key, value).await;
242+
job::schedule_resync(self).await;
243+
ret
244+
}
239245
_ => self.sql.set_raw_config(self, key, value).await,
240246
}
241247
}

src/job.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1063,6 +1063,15 @@ async fn send_mdn(context: &Context, msg: &Message) -> Result<()> {
10631063
Ok(())
10641064
}
10651065

1066+
pub(crate) async fn schedule_resync(context: &Context) {
1067+
kill_action(context, Action::ResyncFolders).await;
1068+
add(
1069+
context,
1070+
Job::new(Action::ResyncFolders, 0, Params::new(), 0),
1071+
)
1072+
.await;
1073+
}
1074+
10661075
/// Creates a job.
10671076
pub fn create(action: Action, foreign_id: i32, param: Params, delay_seconds: i64) -> Result<Job> {
10681077
ensure!(

0 commit comments

Comments
 (0)