diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2019-12-30 18:34:15 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2019-12-30 18:34:15 (GMT) |
commit | e55c2248b46d5580e5b184d2ff9c773f333308b2 (patch) | |
tree | 78e375caf67e26d4d2857a94d25a508a67bf64b8 /src/fortranscanner.l | |
parent | abf1e46f7bc2c31972d36231b4672580704fcc10 (diff) | |
download | Doxygen-e55c2248b46d5580e5b184d2ff9c773f333308b2.zip Doxygen-e55c2248b46d5580e5b184d2ff9c773f333308b2.tar.gz Doxygen-e55c2248b46d5580e5b184d2ff9c773f333308b2.tar.bz2 |
Make commentscan.l reentrant
Diffstat (limited to 'src/fortranscanner.l')
-rw-r--r-- | src/fortranscanner.l | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/fortranscanner.l b/src/fortranscanner.l index 08c7a6a..d569763 100644 --- a/src/fortranscanner.l +++ b/src/fortranscanner.l @@ -67,6 +67,7 @@ #include "pre.h" #include "arguments.h" #include "debug.h" +#include "markdown.h" // Toggle for some debugging info //#define DBG_CTX(x) fprintf x @@ -84,7 +85,7 @@ struct SymbolModifiers { enum Protection {NONE_P, PUBLIC, PRIVATE}; enum Direction {NONE_D, IN, OUT, INOUT}; - //!< This is only used with function return value. + //! This is only used with function return value. QCString type, returnName; Protection protection; Direction direction; @@ -137,6 +138,7 @@ static const char *directionParam[] = * statics */ static OutlineParserInterface *g_thisParser; +static CommentScanner g_commentScanner; static const char * inputString; static int inputPosition; static bool isFixedForm; @@ -2483,8 +2485,8 @@ static void handleCommentBlock(const QCString &doc,bool brief) int lineNr = brief ? current->briefLine : current->docLine; int position=0; bool needsEntry = FALSE; - QCString processedDoc = preprocessCommentBlock(doc,yyFileName,lineNr); - while (parseCommentBlock( + QCString processedDoc = processMarkdownForCommentBlock(doc,yyFileName,lineNr); + while (g_commentScanner.parseCommentBlock( g_thisParser, docBlockInBody ? subrCurrent.back().get() : current.get(), processedDoc, // text |