summaryrefslogtreecommitdiffstats
path: root/src/vhdlcode.l
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-11-27 20:41:30 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-11-27 20:42:43 (GMT)
commita292601d5d06cf5993247f2f7a6bc7306997da23 (patch)
treec79712972c87d360b0c19c526cc9db1498ee34ba /src/vhdlcode.l
parent6de91dc5e32e6d97a557fe6910a6cbf1d453ad9c (diff)
downloadDoxygen-a292601d5d06cf5993247f2f7a6bc7306997da23.zip
Doxygen-a292601d5d06cf5993247f2f7a6bc7306997da23.tar.gz
Doxygen-a292601d5d06cf5993247f2f7a6bc7306997da23.tar.bz2
Issue #8206: Incorrect XHTML results
Changes: - Change TooltipManager back into a singleton - Give the OutputList object a unique output id - Increment the id at each startFile() atomically - Pass the id to the HTML code generator - Store tooltips per output id. - Keep track of tooltips that are already written for a given id - for output formats other than HTML the output id is 0 and tooltips are not collected and written
Diffstat (limited to 'src/vhdlcode.l')
-rw-r--r--src/vhdlcode.l5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/vhdlcode.l b/src/vhdlcode.l
index dfabe5b..480e2e2 100644
--- a/src/vhdlcode.l
+++ b/src/vhdlcode.l
@@ -109,7 +109,6 @@ struct vhdlcodeYY_state
bool lexInit = false;
int braceCount = 0;
- TooltipManager tooltipManager;
};
@@ -1230,7 +1229,7 @@ static void writeMultiLineCodeLink(yyscan_t yyscanner,CodeOutputInterface &ol,
{
struct yyguts_t *yyg = (struct yyguts_t*)yyscanner;
static bool sourceTooltips = Config_getBool(SOURCE_TOOLTIPS);
- yyextra->tooltipManager.addTooltip(d);
+ TooltipManager::instance().addTooltip(ol,d);
QCString ref = d->getReference();
QCString file = d->getOutputFileBase();
QCString anchor = d->anchor();
@@ -1659,7 +1658,7 @@ void VHDLCodeParser::parseCode(CodeOutputInterface &od,
yyextra->startCode=false;
// write the tooltips
- yyextra->tooltipManager.writeTooltips(od);
+ TooltipManager::instance().writeTooltips(od);
printlex(yy_flex_debug, false, __FILE__, fd ? fd->fileName().data(): NULL);
}