From 2f75a9d7d629163a7c95aa287ce1ec3dd008734f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bar=C4=B1=C5=9F=20Metin?= Date: Mon, 11 Jan 2010 10:29:54 +0000 Subject: [PATCH] fix parsing formatted rspecs. --- sfa/util/rspec.py | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/sfa/util/rspec.py b/sfa/util/rspec.py index c0301714..28483312 100644 --- a/sfa/util/rspec.py +++ b/sfa/util/rspec.py @@ -137,23 +137,22 @@ class RSpec: if nodeDom.hasChildNodes(): for child in nodeDom.childNodes: childName = self._getName(child) - # skip null children - if not childName: - continue - # initialize the possible array of children - if not node[elementName].has_key(childName): - node[elementName][childName] = [] - # if child node has text child nodes - # append the children to the array as strings - if child.hasChildNodes() and isinstance(child.childNodes[0], minidom.Text): - for nextchild in child.childNodes: + + # skip null children + if not childName: continue + + # initialize the possible array of children + if not node[elementName].has_key(childName): node[elementName][childName] = [] + + if isinstance(child, minidom.Text): + # add if data is not empty + if child.data.strip(): node[elementName][childName].append(nextchild.data) - # convert element child node to dict - else: + else: childdict = self.toDict(child) for value in childdict.values(): node[elementName][childName].append(value) - #node[childName].append(self.toDict(child)) + return node -- 2.47.0