[geary/cherry-pick-ffb3b8fb] Merge branch 'wip/366-remove-folders' into 'mainline'
- From: Michael Gratton <mjog src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary/cherry-pick-ffb3b8fb] Merge branch 'wip/366-remove-folders' into 'mainline'
- Date: Wed, 17 Jul 2019 05:29:17 +0000 (UTC)
commit 6cb54365341ac44be0b1f72120ba34baf8046c6d
Author: Michael Gratton <mike vee net>
Date: Wed Jul 17 05:27:39 2019 +0000
Merge branch 'wip/366-remove-folders' into 'mainline'
Fix folders removed from the server never being removed
See merge request GNOME/geary!255
(cherry picked from commit ffb3b8fb7af20ee54106753a612313c892d52d95)
9c8723ac Fix folders removed from the server never being removed
src/client/application/geary-controller.vala | 6 ++++--
src/engine/imap-engine/imap-engine-generic-account.vala | 6 ++++--
2 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/src/client/application/geary-controller.vala b/src/client/application/geary-controller.vala
index 48f3d07a..d975a0b0 100644
--- a/src/client/application/geary-controller.vala
+++ b/src/client/application/geary-controller.vala
@@ -1479,8 +1479,8 @@ public class GearyController : Geary.BaseObject {
if (unavailable != null) {
Gee.BidirIterator<Geary.Folder> unavailable_iterator =
unavailable.bidir_iterator();
- unavailable_iterator.last();
- while (unavailable_iterator.previous()) {
+ bool has_prev = unavailable_iterator.last();
+ while (has_prev) {
Geary.Folder folder = unavailable_iterator.get();
main_window.folder_list.remove_folder(folder);
@@ -1507,6 +1507,8 @@ public class GearyController : Geary.BaseObject {
}
folder.special_folder_type_changed.disconnect(on_special_folder_type_changed);
+
+ has_prev = unavailable_iterator.previous();
}
}
}
diff --git a/src/engine/imap-engine/imap-engine-generic-account.vala
b/src/engine/imap-engine/imap-engine-generic-account.vala
index 51cb23e5..18609fd5 100644
--- a/src/engine/imap-engine/imap-engine-generic-account.vala
+++ b/src/engine/imap-engine/imap-engine-generic-account.vala
@@ -1319,8 +1319,8 @@ internal class Geary.ImapEngine.UpdateRemoteFolders : AccountOperation {
Gee.BidirIterator<MinimalFolder> removed_iterator =
removed.bidir_iterator();
- removed_iterator.last();
- while (removed_iterator.previous()) {
+ bool has_prev = removed_iterator.last();
+ while (has_prev) {
MinimalFolder folder = removed_iterator.get();
try {
@@ -1329,6 +1329,8 @@ internal class Geary.ImapEngine.UpdateRemoteFolders : AccountOperation {
} catch (Error e) {
debug("Unable to locally delete removed folder %s: %s", folder.to_string(), e.message);
}
+
+ has_prev = removed_iterator.previous();
}
// Let the remote know as well
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]