GNOME Bugzilla – Bug 418615
multiple single-arg format changing directives affect more than one word
Last modified: 2018-07-30 10:48:19 UTC
Please describe the problem: When using multiple commands that change the format of the word following the command, more than one word is affected. Steps to reproduce: Use more than one formatting command, e.g.: 'this is @c @e some broken text' Actual results: The second command works, the first applies to the correct word /and the one after/. That is, the output looks like: 'this is <tt><em>some</em> broken</tt> text' Expected results: The commands should stack and apply to only one word, i.e.: 'this is <tt><em>some</em></tt> broken text' Does this happen every time? Yes Other information: doxygen 1.4.7 modified
Created attachment 84669 [details] [review] Patch to (hopefully) fix the problem Well, I think this qualifies as "an ugly hack: :-). There are a number of weird corner cases that need to be handled in addition to handleStyleArgument needing to know to stop eating tokens after it has (indirectly) called itself. I *think* this fixes all cases (and also seems to make doxygen output fewer extraneous spaces). NOTE: In addition to the docparser.cpp patch, RetVal_Nested needs to be defined in doctokenizer.h.
I get a lot of additional warnings when I try the patch on doxygen's own documentation (i.e. the user manual), so the patch is not without its problems.
*** Bug 662745 has been marked as a duplicate of this bug. ***
As discussed in https://github.com/doxygen/doxygen/pull/734 , Doxygen has moved its issue tracking to https://github.com/doxygen/doxygen/issues All Doxygen tickets in GNOME Bugzilla have been migrated to Github. You can subscribe and participate in the new ticket in Github. You can find the corresponding Github ticket by searching for its Bugzilla ID (number) in Github. Hence I am closing this GNOME Bugzilla ticket. Please use the corresponding ticket in Github instead. Thanks a lot!