Fixed bug #1296104 ( Renderer broken when two option breaks next to each other)

Fixes: https://launchpad.net/bugs/1296104
This commit is contained in:
Andreas Preikschat 2014-03-22 18:59:22 +01:00
parent f0d5e6c530
commit ad0e6a29f2

View File

@ -284,6 +284,9 @@ class Renderer(object):
elif item.is_capable(ItemCapabilities.CanSoftBreak): elif item.is_capable(ItemCapabilities.CanSoftBreak):
pages = [] pages = []
if u'[---]' in text: if u'[---]' in text:
# Remove two or more option slide breaks next to each other (causing infinite loop).
while u'\n[---]\n[---]\n' in text:
text = text.replace(u'\n[---]\n[---]\n', u'\n[---]\n')
while True: while True:
slides = text.split(u'\n[---]\n', 2) slides = text.split(u'\n[---]\n', 2)
# If there are (at least) two occurrences of [---] we use # If there are (at least) two occurrences of [---] we use