[geary/wip/789924-network-transition: 11/15] Fix race between account becoming ready and MinimalFolder opening.



commit 4218dbb715166c75451a1402c222c256f8809bbd
Author: Michael James Gratton <mike vee net>
Date:   Fri Nov 10 13:36:36 2017 +1100

    Fix race between account becoming ready and MinimalFolder opening.
    
    * src/engine/imap-engine/imap-engine-minimal-folder.vala (MinimalFolder):
      remove remote_ready attr, just use the property on Imap.Account. This
      ensures that if the account is already ready, the folder opens right
      away.

 .../imap-engine/imap-engine-minimal-folder.vala    |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)
---
diff --git a/src/engine/imap-engine/imap-engine-minimal-folder.vala 
b/src/engine/imap-engine/imap-engine-minimal-folder.vala
index 959b522..243b716 100644
--- a/src/engine/imap-engine/imap-engine-minimal-folder.vala
+++ b/src/engine/imap-engine/imap-engine-minimal-folder.vala
@@ -43,7 +43,6 @@ private class Geary.ImapEngine.MinimalFolder : Geary.Folder, Geary.FolderSupport
     private Folder.OpenFlags open_flags = OpenFlags.NONE;
     private int open_count = 0;
     private bool remote_opened = false;
-    private bool remote_ready = false;
     private TimeoutManager remote_open_timer;
     private Nonblocking.ReportingSemaphore<bool> remote_semaphore =
         new Nonblocking.ReportingSemaphore<bool>(false);
@@ -577,7 +576,7 @@ private class Geary.ImapEngine.MinimalFolder : Geary.Folder, Geary.FolderSupport
     private void start_open_remote() {
         if (!this.remote_opened &&
             !this.remote_open_timer.is_running &&
-            this.remote_ready) {
+            this.remote.is_ready) {
             this.remote_open_timer.reset();
             this.remote_opened = true;
             this.open_remote_async.begin(null);
@@ -1561,7 +1560,6 @@ private class Geary.ImapEngine.MinimalFolder : Geary.Folder, Geary.FolderSupport
     }
 
     private void on_remote_ready() {
-        this.remote_ready = true;
         start_open_remote();
     }
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]