GNOME Bugzilla – Bug 732768
nested html tables cause pdflatex to hang (1.8.4 and 1.8.6)
Last modified: 2014-08-21 17:15:40 UTC
Created attachment 279947 [details] transcript of successful build with version 1.7.4 versions 1.8.4 and 1.8.6 of doxygen hang when pdflatex tries to process the latex source generated from code whose documentation contains nested html tables. version 1.7.4 works fine -- this may help to narrow things down. [This is "major" for us because we (used to) use doxygen to generate pdf-based documentation automatically and the entire build process for our library now hangs when it generates the documentation.] The most simplistic "code" that illustrates the problem is this: /** \mainpage bla <CENTER> <TABLE> <TR> <TD> <CENTER> <TABLE BORDER="0"> <TR> <TD> bla </TD> </TR> </TABLE> </CENTER> </TD> </TR> </TABLE> </CENTER> **/ I'm attaching transcripts of the respective attempts to build the documentation (using 1.7.4 and 1.8.4; note that in both cases I'm "more"-ing the generated latex code) as well as the source code (already listed above) and a successfully built pdf file.
Created attachment 279948 [details] transcript of unsuccessful build with version 1.8.4
Created attachment 279949 [details] source code that creates the problem
Created attachment 279950 [details] successfully generated pdf file
The problem seems to come from the use of xtabular in doxygen.sty instead of tabular that was still used <1.8.0. So a quick workaround is to use a custom stylesheet. First run: doxygen -w latex header.tex footer.tex mydoxygen.sty edit mydoxygen.sty and replace xtabular by tabular. Put the following in the config file LATEX_HEADER = header.tex LATEX_EXTRA_FILES = mydoxygen.sty (the latter option requires a recent version of doxygen, for older versions you have to copy mydoxygen.sty to the latex output directory yourself).
Brilliant -- this seems to fix it. Thanks for your quick response! We'll use this as work-around. In fact, what's the advantage of switching to xtabular in the first place? [No need to reply -- I'm sure you've got better things to do!] Thanks again, Matthias
advantage of xtabular: large tables will not run into the page margin and off of the page, but instead the table will be split over multiple pages automatically.
Since the issue seems to be with nesting xtabular's only, I'll make doxygen use xtabular for the outer tables, and tabular for any nested tables.
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.8.8. Please verify if this is indeed the case. Reopen the bug if you think it is not fixed and please include any additional information that you think can be relevant (preferrably in the form of a self-contained example).