Skip to content

Commit 08d8988

Browse files
Legend-MasterSir-Thom
authored andcommitted
Cancel auto save on save (tauri-apps#1859)
1 parent 89b09d2 commit 08d8988

File tree

1 file changed

+4
-10
lines changed

1 file changed

+4
-10
lines changed

plugins/store/src/store.rs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -437,6 +437,9 @@ impl<R: Runtime> Store<R> {
437437
}
438438

439439
pub fn save(&self) -> crate::Result<()> {
440+
if let Some(sender) = self.auto_save_debounce_sender.lock().unwrap().take() {
441+
let _ = sender.send(AutoSaveMessage::Cancel);
442+
}
440443
self.store.lock().unwrap().save(self.serialize)
441444
}
442445

@@ -467,8 +470,8 @@ impl<R: Runtime> Store<R> {
467470
}
468471
}
469472
_ = sleep(auto_save_delay) => {
470-
let _ = store.lock().unwrap().save(serialize_fn);
471473
auto_save_debounce_sender.lock().unwrap().take();
474+
let _ = store.lock().unwrap().save(serialize_fn);
472475
return;
473476
}
474477
};
@@ -477,12 +480,3 @@ impl<R: Runtime> Store<R> {
477480
Ok(())
478481
}
479482
}
480-
481-
impl<R: Runtime> Drop for Store<R> {
482-
fn drop(&mut self) {
483-
let auto_save_debounce_sender = self.auto_save_debounce_sender.lock().unwrap();
484-
if let Some(ref sender) = *auto_save_debounce_sender {
485-
let _ = sender.send(AutoSaveMessage::Cancel);
486-
}
487-
}
488-
}

0 commit comments

Comments
 (0)