diff --git a/src/parser.c b/src/parser.c index a037280..be07b29 100644 --- a/src/parser.c +++ b/src/parser.c @@ -2435,6 +2435,7 @@ void TY_(ParseList)(TidyDocImpl* doc, Node *list, GetTokenMode ARG_UNUSED(mode)) Lexer* lexer = doc->lexer; Node *node, *parent, *lastli; Bool wasblock; + Bool nodeisOL = nodeIsOL(list); #if !defined(NDEBUG) && defined(_MSC_VER) in_parse_list++; @@ -2452,6 +2453,7 @@ void TY_(ParseList)(TidyDocImpl* doc, Node *list, GetTokenMode ARG_UNUSED(mode)) while ((node = TY_(GetToken)( doc, IgnoreWhitespace)) != NULL) { + Bool foundLI = no; if (node->tag == list->tag && node->type == EndTag) { TY_(FreeNode)( doc, node); @@ -2521,10 +2523,16 @@ void TY_(ParseList)(TidyDocImpl* doc, Node *list, GetTokenMode ARG_UNUSED(mode)) continue; } - if ( nodeIsLI(node) || TY_(IsHTML5Mode)(doc)) + if ( !nodeIsLI(node) && nodeisOL ) { - /* node is
  • - Issue #396 - A