summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlbert <albert.tests@gmail.com>2013-11-10 18:20:03 (GMT)
committerAlbert <albert.tests@gmail.com>2013-11-10 18:20:03 (GMT)
commit057f260bfdc3a91a71e83dd5843564225a4bf1aa (patch)
treede71381977421df4df62525a92130884b0dc9b5f
parent7cda115a6830bf816a094e37c498e5a50ce1b29c (diff)
downloadDoxygen-057f260bfdc3a91a71e83dd5843564225a4bf1aa.zip
Doxygen-057f260bfdc3a91a71e83dd5843564225a4bf1aa.tar.gz
Doxygen-057f260bfdc3a91a71e83dd5843564225a4bf1aa.tar.bz2
Bug 711787 - Long initialization line in C stops doxygen
An extra "breakpoint" in the input string has been created in the form of a , (comma), so for initialization lines the line will be shorter and the , (comma) will be copied later on.
-rw-r--r--src/commentcnv.l9
-rw-r--r--src/scanner.l5
2 files changed, 10 insertions, 4 deletions
diff --git a/src/commentcnv.l b/src/commentcnv.l
index 948d6e2..45d94dc 100644
--- a/src/commentcnv.l
+++ b/src/commentcnv.l
@@ -241,9 +241,12 @@ void replaceComment(int offset);
%%
-<Scan>[^"'!\/\n\\#\\-]* { /* eat anything that is not " / or \n */
- copyToOutput(yytext,(int)yyleng);
- }
+<Scan>[^"'!\/\n\\#\\-\\,]* { /* eat anything that is not " / , or \n */
+ copyToOutput(yytext,(int)yyleng);
+ }
+<Scan>[\\,] { /* eat , so we have a nice separator in long initialization lines */
+ copyToOutput(yytext,(int)yyleng);
+ }
<Scan>"\"\"\""! { /* start of python long comment */
if (g_lang!=SrcLangExt_Python)
{
diff --git a/src/scanner.l b/src/scanner.l
index f0067b0..0df0a8a 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -3252,7 +3252,10 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
*pCopyCurlyGString+=yytext;
}
}
-<GCopyCurly>[^"'{}\/\n]+ {
+<GCopyCurly>[^"'{}\/\n,]+ {
+ *pCopyCurlyGString+=yytext;
+ }
+<GCopyCurly>[,]+ {
*pCopyCurlyGString+=yytext;
}
<GCopyCurly>"/" { *pCopyCurlyGString+=yytext; }