After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 678177 - Explicitly specified <PRE> tags are no longer handled properly
Explicitly specified <PRE> tags are no longer handled properly
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.8.1.1
Other Windows
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
: 679756 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2012-06-15 15:40 UTC by Bruce Florman
Modified: 2012-07-12 15:41 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Zipped source, cfg and output from both 1.7.6.1 and 1.8.1.1 (128.83 KB, application/x-zip-compressed)
2012-06-15 15:40 UTC, Bruce Florman
Details

Description Bruce Florman 2012-06-15 15:40:48 UTC
Created attachment 216530 [details]
Zipped source, cfg and output from both 1.7.6.1 and 1.8.1.1

I recently switched from version 1.7.6.1 to 1.8.1.1 in order to get the fix for a header guard problem that was affecting one of my modules. Unfortunately, the newer version has now broken the documentation of several other things which used the HTML <PRE> and </PRE> tags to embed "ASCII" graphics in the documentation.

I'm attaching a much trimmed example and the output produced by both versions. While processing the source, version 1.7.6.1 is entirely happy, but version 1.8.1.1 outputs the following two warnings:

X:/test.cpp:253: warning: found </pre> at different nesting level (5) than expected (2)
X:/test.cpp:469: warning: end of comment block while expecting command </pre>

It's pretty clear that the text between the <PRE> and </PRE> tags is being processed by the newer version of Doxygen, while it was always just copied verbatim by the older version.

I've downloaded and tested the 1.8.0 and 1.8.1 versions too, and both of them have the same problem.
Comment 1 Dimitri van Heesch 2012-06-17 12:03:49 UTC
I think that in your example you should have used @verbatim..@endverbatim instead of <pre>..</pre> as markup processing is done inside <pre>..</pre>, and you clearly don't want that.

One of the markup processing steps is Markdown (which you can disabled by setting MARKDOWN_SUPPORT to NO).

Another is that -- is replaced by &ndash; and --- by &mdash. I see if I can make this more robust (e.g. disabling it inside <pre>..</pre>).
Comment 2 Dimitri van Heesch 2012-06-17 12:39:58 UTC
I see that I had already disabled Markdown procesinng inside <pre> blocks except for a small part (lists starting with +), so I'll correct that as well, and then your example should work with or without Markdown processing enabled.
Comment 3 Dimitri van Heesch 2012-07-11 18:06:36 UTC
*** Bug 679756 has been marked as a duplicate of this bug. ***
Comment 4 Dimitri van Heesch 2012-07-12 15:41:57 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.8.1.2. 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.