From 2add94f5b04dbe1465c2ce83b064d381c6bdc822 Mon Sep 17 00:00:00 2001 From: jheling <35200188+jheling@users.noreply.github.com> Date: Thu, 27 Feb 2020 18:29:11 +0100 Subject: Fix TypeError: 'NoneType' object is not an iterator When deleting sub-elements in a stanza. --- slixmpp/xmlstream/stanzabase.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/slixmpp/xmlstream/stanzabase.py b/slixmpp/xmlstream/stanzabase.py index c3dbfb67..f45e4b96 100644 --- a/slixmpp/xmlstream/stanzabase.py +++ b/slixmpp/xmlstream/stanzabase.py @@ -1031,14 +1031,19 @@ class ElementBase(object): if not lang: lang = default_lang + parent = self.xml for level, _ in enumerate(path): # Generate the paths to the target elements and their parent. element_path = "/".join(path[:len(path) - level]) parent_path = "/".join(path[:len(path) - level - 1]) elements = self.xml.findall(element_path) - parent = self.xml.find(parent_path) - + + if parent_path == '': + parent_path = None + if parent_path is not None: + parent = self.xml.find(parent_path) + if elements: if parent is None: parent = self.xml -- cgit v1.2.3