diff --git a/applications/utilities/miscellaneous/foamHelp/helpTypes/doxygenXmlParser/doxygenXmlParser.C b/applications/utilities/miscellaneous/foamHelp/helpTypes/doxygenXmlParser/doxygenXmlParser.C index ac9c639c497956968433375dc05fc8123f71c9a3..b3cc2da3e63541d5c2673859a7cdec9305dc18ae 100644 --- a/applications/utilities/miscellaneous/foamHelp/helpTypes/doxygenXmlParser/doxygenXmlParser.C +++ b/applications/utilities/miscellaneous/foamHelp/helpTypes/doxygenXmlParser/doxygenXmlParser.C @@ -213,25 +213,21 @@ void Foam::doxygenXmlParser::skipForward ) const { // recurse to move forward in 'is' until come across <blockName> - - // fast-forward until we reach a '<' - char c; - while (is.get(c) && c != '<') - {} - string entryName = ""; - while (is.get(c) && c != '>') - { - entryName = entryName + c; - } + char c; - if (entryName == blockName) - { - return; - } - else + while (is.good() && (entryName != blockName)) { - skipForward(is, blockName); + entryName = ""; + + // fast-forward until we reach a '<' + while (is.get(c) && c != '<') + {} + + while (is.get(c) && c != '>') + { + entryName = entryName + c; + } } }