[PATCH rhel7-branch] network: handle dbus UnknownMethod exception on invalid objects (#1061796)

Radek Vykydal rvykydal at redhat.com
Wed Sep 24 09:31:06 UTC 2014


Another instance of what has been fixed by
commit 57c029ae7be92bf9d8a7e8f2ec552b4294d23f6c
This time catch it when getting properties via python-dbus api.

Resolves: rhbz#1061796
---
 pyanaconda/ui/gui/spokes/network.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/pyanaconda/ui/gui/spokes/network.py b/pyanaconda/ui/gui/spokes/network.py
index 355756f..40a8cb0 100644
--- a/pyanaconda/ui/gui/spokes/network.py
+++ b/pyanaconda/ui/gui/spokes/network.py
@@ -997,7 +997,15 @@ class NetworkControlBox(GObject.GObject):
 
         # TODO NM_GI_BUGS
         ap_dbus = dbus.SystemBus().get_object(NM_SERVICE, ap.get_path())
-        mode = getNMObjProperty(ap_dbus, ".AccessPoint", "Mode")
+        try:
+            mode = getNMObjProperty(ap_dbus, ".AccessPoint", "Mode")
+        except dbus.DBusException as e:
+            # object has became invalid (race)
+            if e.get_dbus_name() == "org.freedesktop.DBus.Error.UnknownMethod":
+                return
+            else:
+                raise
+
 
         security = self._ap_security_dbus(ap)
 
-- 
1.9.3



More information about the anaconda-patches mailing list