[geary/mjog/replay-queue-fixes: 2/2] Geary.App.ConversationMonitor: Check for email deleted flags on change
- From: Michael Gratton <mjog src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary/mjog/replay-queue-fixes: 2/2] Geary.App.ConversationMonitor: Check for email deleted flags on change
- Date: Wed, 24 Feb 2021 08:10:04 +0000 (UTC)
commit de3946d4a25e72fb4b9cbb8a2a7b3db612f1d6a2
Author: Michael Gratton <mike vee net>
Date: Tue Feb 23 22:58:02 2021 +1100
Geary.App.ConversationMonitor: Check for email deleted flags on change
Ensure an email's deleted flag is appropriately set (or not) before
re-adding or evaporating conversations based on them.
.../imap-engine/replay-ops/imap-engine-replay-update.vala | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
---
diff --git a/src/engine/imap-engine/replay-ops/imap-engine-replay-update.vala
b/src/engine/imap-engine/replay-ops/imap-engine-replay-update.vala
index beb573553..2a75f07ec 100644
--- a/src/engine/imap-engine/replay-ops/imap-engine-replay-update.vala
+++ b/src/engine/imap-engine/replay-ops/imap-engine-replay-update.vala
@@ -61,7 +61,15 @@ private class Geary.ImapEngine.ReplayUpdate : Geary.ImapEngine.ReplayOperation {
yield this.owner.local_folder.set_email_flags_async(changed_map, null);
- this.owner.replay_notify_email_flags_changed(changed_map);
+ // only notify if the email is not marked for deletion
+ try {
+ yield this.owner.local_folder.fetch_email_async(
+ id, NONE, NONE, null
+ );
+ this.owner.replay_notify_email_flags_changed(changed_map);
+ } catch (EngineError.NOT_FOUND err) {
+ //fine
+ }
} else {
debug("%s replay_local_async id is null!", to_string());
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]