diff --git a/src/calibre/ebooks/html.py b/src/calibre/ebooks/html.py index 1f1e6b94b1..f6f5f62720 100644 --- a/src/calibre/ebooks/html.py +++ b/src/calibre/ebooks/html.py @@ -273,7 +273,12 @@ def traverse(path_to_html_file, max_levels=sys.maxint, verbose=0, encoding=None) hf.links.remove(link) next_level = list(nl) - return flat, list(depth_first(flat[0], flat)) + orec = sys.getrecursionlimit() + sys.setrecursionlimit(500000) + try: + return flat, list(depth_first(flat[0], flat)) + finally: + sys.setrecursionlimit(orec) def opf_traverse(opf_reader, verbose=0, encoding=None):