[geary/geary-0.13] Merge branch 'wip/266-dns-errors' into 'master'



commit 606f0d3bd0d228348a37fe54c8186d2abe2391ea
Author: Michael Gratton <mike vee net>
Date:   Mon Mar 4 22:06:59 2019 +0000

    Merge branch 'wip/266-dns-errors' into 'master'
    
    Fix spurious "Can't reach host" running under Flatpak, maybe elsewhere
    
    See merge request GNOME/geary!162
    
    (cherry picked from commit 52d1cb85c15712212d3088a6f7e6670cf8b75203)
    
    b7d0f073 Fix spurious "Can't reach host" running under Flatpak, maybe elsewhere

 src/engine/util/util-connectivity-manager.vala | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
---
diff --git a/src/engine/util/util-connectivity-manager.vala b/src/engine/util/util-connectivity-manager.vala
index e8b42bed..abcf1a5a 100644
--- a/src/engine/util/util-connectivity-manager.vala
+++ b/src/engine/util/util-connectivity-manager.vala
@@ -115,6 +115,23 @@ public class Geary.ConnectivityManager : BaseObject {
             );
         } catch (GLib.IOError.CANCELLED err) {
             // User cancelled, so leave as unreachable
+        } catch (GLib.IOError.HOST_UNREACHABLE err) {
+            // Despite returning a boolean, per its API docs
+            // NetworkMonitor.can_reach() should never actually return
+            // false under Vala since it will throw an error instead,
+            // and usually this one. While that's not 100% always the
+            // case, we do need to treat this error as meaning
+            // unreachable.
+            //
+            // However if the monitor says there actually is a network
+            // available, we may be running under Flatpak with Network
+            // Manager connectivity checking enabled and hitting issue
+            // GNOME/glib#1705. Pull this debug logging out once that
+            // is fixed.
+            if (this.monitor.network_available) {
+                debug("Assuming %s is unreachable, despite network availability",
+                      endpoint);
+            }
         } catch (GLib.DBusError err) {
             // Running under Flatpak can cause a DBus error if the
             // portal is malfunctioning (e.g. Geary #97 & #82 and


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