diff --git a/NEWS b/NEWS index 88793641..57a3511e 100644 --- a/NEWS +++ b/NEWS @@ -14,6 +14,8 @@ NEWS ( CHANGELOG and HISTORY ) HTMLPurifier ! CSS properties are now case-insensitive - Colors missing # but in hex form will be corrected - CSS Number algorithm improved +- Autoclose now operates iteratively, i.e.
now has + both span tags closed. 2.1.3, released 2007-11-05 ! tests/multitest.php allows you to test multiple versions by running diff --git a/library/HTMLPurifier/Strategy/MakeWellFormed.php b/library/HTMLPurifier/Strategy/MakeWellFormed.php index 4b6f498f..30208ba1 100644 --- a/library/HTMLPurifier/Strategy/MakeWellFormed.php +++ b/library/HTMLPurifier/Strategy/MakeWellFormed.php @@ -158,10 +158,9 @@ class HTMLPurifier_Strategy_MakeWellFormed extends HTMLPurifier_Strategy // the parent if (!isset($parent_info->child->elements[$token->name])) { if ($e) $e->send(E_NOTICE, 'Strategy_MakeWellFormed: Tag auto closed', $parent); - // close the parent, then append the token + // close the parent, then re-loop to reprocess token $result[] = new HTMLPurifier_Token_End($parent->name); - $result[] = $token; - $this->currentNesting[] = $token; + $this->inputIndex--; continue; } diff --git a/tests/HTMLPurifier/Strategy/MakeWellFormedTest.php b/tests/HTMLPurifier/Strategy/MakeWellFormedTest.php index a227d6a7..4f5df04e 100644 --- a/tests/HTMLPurifier/Strategy/MakeWellFormedTest.php +++ b/tests/HTMLPurifier/Strategy/MakeWellFormedTest.php @@ -82,5 +82,12 @@ class HTMLPurifier_Strategy_MakeWellFormedTest extends HTMLPurifier_StrategyHarn ); } + function testAutoCloseMultiple() { + $this->assertResult( + '
', + '
' + ); + } + }