summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2018-08-11 09:35:40 (GMT)
committeralbert-github <albert.tests@gmail.com>2018-08-11 09:35:40 (GMT)
commit09af3e03a55a5b02ebb6254c39a09877c8bd671b (patch)
tree5cf9db0a9d960fb416456344d028e5e9a278e86a /src
parentc82abe1f23ec55aa1d05f118c2bae3aac3b68296 (diff)
downloadDoxygen-09af3e03a55a5b02ebb6254c39a09877c8bd671b.zip
Doxygen-09af3e03a55a5b02ebb6254c39a09877c8bd671b.tar.gz
Doxygen-09af3e03a55a5b02ebb6254c39a09877c8bd671b.tar.bz2
Bug 748927 - Navigation incorrect with escaped symbols
Due to the fact that constructs like `<my>` in a page title are seen as an XML-tag (with a resulting warning) the `<` should be escaped but this leads to the fact that the escape sign is shown in the bars on top of a HTML page. The basic problem is due to the fact that page titles are not really interpreted by doxygen (as "nothing" can be, generically, handled in the title of a page.
Diffstat (limited to 'src')
-rw-r--r--src/commentscan.l8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/commentscan.l b/src/commentscan.l
index e40d80f..6d3bec0 100644
--- a/src/commentscan.l
+++ b/src/commentscan.l
@@ -1588,8 +1588,12 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
<PageDocArg1>. { // ignore other stuff
}
<PageDocArg2>.*"\n" { // second argument; page title
- yyLineNr++;
- current->args = yytext;
+ yyLineNr++;
+ // bug 748927
+ QCString tmp = yytext;
+ tmp = substitute(substitute(tmp,"@<","&lt;"),"@>","&gt;");
+ tmp = substitute(substitute(tmp,"\\<","&lt;"),"\\>","&gt;");
+ current->args = tmp;
addOutput('\n');
BEGIN( Comment );
}