From 265c36b3458dfb36e7521752058826de47d45576 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sat, 21 Apr 2018 15:39:08 +0200 Subject: [PATCH] Claim exceptions --- hassio/misc/gdbus.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/hassio/misc/gdbus.py b/hassio/misc/gdbus.py index 196df2e75..e03ac651a 100644 --- a/hassio/misc/gdbus.py +++ b/hassio/misc/gdbus.py @@ -27,6 +27,11 @@ class DBusReturnError(DBusError): pass +class DBusParseError(DBusError): + """DBus parse error.""" + pass + + class DBus(object): """DBus handler.""" @@ -61,7 +66,13 @@ class DBus(object): raise # Parse XML - xml = ET.fromstring(data) + try: + xml = ET.fromstring(data) + except ET.ParseError as err: + _LOGGER.error("Can't parse introspect data: %s", err) + raise DBusParseError() from None + + # Read available methods for method in xml.findall(".//method"): self.methods.append(method.get('name'))