- From: Kenichi Numata <Kenichi.Numata@fujixerox.co.jp>
- Date: Fri, 01 Oct 1999 15:18:55 +0900
- To: html-tidy@w3.org
- Message-ID: <37F4524F.D8D8A4C2@fujixerox.co.jp>
Thanks to Dave Raggett, the bug which I reported is now fixed. But There are a few more cases which causes infinite loop in the newest version of tidy. ---- Example 1. <html> <head><title>Loop 1</title></head> <body> <ol> <font color="red"><li>Item 1</li></font> <font color="green"><li>Item 2</li></font> </ol> </body> </html> ---- Example 2. (This is what Björn Höhrmann reported.) <html> <head><title>Loop 2</title></head> <body> <ol> <ul> </ol> </body> </html> ---- I attach a quick patch for this problem. I hope it doesn't affect anything else. Regards, -- Kenichi Numata IT Business Development Dept., Fuji Xerox Co., Ltd. E-Mail: Kenichi.Numata@fujixerox.co.jp
*** tidy27sep99\parser.c Mon Sep 27 10:15:50 1999 --- parser.c Fri Oct 01 14:40:42 1999 *************** *** 651,657 **** return; } ! node = InferredTag(lexer, "ul"); } else if (node->tag->model & CM_DEFLIST) { --- 651,660 ---- return; } ! if (element->was) ! node = InferredTag(lexer, element->was->name); ! else ! node = InferredTag(lexer, "ul"); } else if (node->tag->model & CM_DEFLIST) { *************** *** 1399,1404 **** --- 1402,1414 ---- TrimEmptyElement(lexer, list); return; } + } + + if (node->tag && node->tag->model & CM_BLOCK) + { + ReportWarning(lexer, list, node, DISCARDING_UNEXPECTED); + FreeNode(node); + continue; } }
Received on Friday, 1 October 1999 02:19:08 UTC