diff --git a/SupyML/plugin.py b/SupyML/plugin.py
index ed8d9b2..a4516b5 100644
--- a/SupyML/plugin.py
+++ b/SupyML/plugin.py
@@ -170,12 +170,15 @@ class SupyMLParser:
raise LoopTypeIsMissing(node.toxml())
elif loopType is None:
loopType = childNode.nodeName
- loopCond = childNode.toxml()[len(''):-len('')]
+ loopCond = childNode.toxml()
+ loopCond = loopCond[len(loopType+'<>'):-len(loopType+'>')]
else:
loopContent += childNode.toxml()
if loopType == 'while':
try:
- while utils.str.toBool(self._parse(loopCond, variables, True)):
+ while utils.str.toBool(self._parse(loopCond, variables,
+ True).split(': ')[1]):
+ loopContent = '%s' % loopContent
output += self._parse(loopContent)
except AttributeError: # toBool() failed
pass
diff --git a/SupyML/test.py b/SupyML/test.py
index 438316d..5266f25 100644
--- a/SupyML/test.py
+++ b/SupyML/test.py
@@ -115,7 +115,7 @@ class SupyMLTestCase(ChannelPluginTestCase):
''
''
'',
- 'barbar')
+ 'bar')
# vim:set shiftwidth=4 tabstop=4 expandtab textwidth=79: