PDF Output: Do not error out when generating an outline which points to pages that have been removed. Fixes #1044799 (Private bug)

This commit is contained in:
Kovid Goyal 2012-09-02 15:13:12 +05:30
parent 5736706846
commit efac50df46

View File

@ -47,14 +47,19 @@ class Outline(object):
for child in toc:
page, ypos = self.get_pos(child)
text = child.text or _('Page %d')%page
if page >= self.page_count:
page = self.page_count - 1
cn = parent.create(text, page, True)
self.add_children(child, cn)
def __call__(self, doc):
self.pos_map = dict(self.pos_map)
self.page_count = doc.page_count()
for child in self.toc:
page, ypos = self.get_pos(child)
text = child.text or _('Page %d')%page
if page >= self.page_count:
page = self.page_count - 1
node = doc.create_outline(text, page)
self.add_children(child, node)