Skip to content

Commit 306760b

Browse files
committed
PR doxygen#11631 refactor: use lookup instead of linear search
1 parent 98d58ba commit 306760b

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed

src/docnode.cpp

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -759,16 +759,14 @@ DocRef::DocRef(DocParser *parser,DocNodeVariant *parent,const QCString &target,c
759759
}
760760
else if (Config_getBool(IMPLICIT_DIR_DOCS) && target.lower().endsWith("/readme.md"))
761761
{
762-
QCString dirTarget = target.left(target.length() - 9);
763-
for (const auto &dd : *Doxygen::dirLinkedMap)
762+
QCString dirTarget = target.left(target.length() - 9); // strip readme.md part
763+
const auto &dd = Doxygen::dirLinkedMap->find(dirTarget);
764+
if (dd)
764765
{
765-
if (dd->name() == dirTarget)
766-
{
767-
m_text = target;
768-
m_file = dd->getOutputFileBase();
769-
AUTO_TRACE_EXIT("directory");
770-
return;
771-
}
766+
m_text = target;
767+
m_file = dd->getOutputFileBase();
768+
AUTO_TRACE_EXIT("directory");
769+
return;
772770
}
773771
}
774772
else if (resolveLink(context,target,true,&compound,anchor,lang,parser->context.prefix))

0 commit comments

Comments
 (0)