mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2024-11-09 15:28:40 +00:00
Fix autoparagraph bug with non-inline elements.
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
This commit is contained in:
parent
bde4de3c78
commit
694583259c
@ -34,16 +34,21 @@ class HTMLPurifier_Injector_AutoParagraph extends HTMLPurifier_Injector
|
||||
// ----
|
||||
// This is a degenerate case
|
||||
} else {
|
||||
// State 1.2: PAR1
|
||||
// ----
|
||||
if (!$token->is_whitespace || $this->_isInline($current)) {
|
||||
// State 1.2: PAR1
|
||||
// ----
|
||||
|
||||
// State 1.3: PAR1\n\nPAR2
|
||||
// ------------
|
||||
// State 1.3: PAR1\n\nPAR2
|
||||
// ------------
|
||||
|
||||
// State 1.4: <div>PAR1\n\nPAR2 (see State 2)
|
||||
// ------------
|
||||
$token = array($this->_pStart());
|
||||
$this->_splitText($text, $token);
|
||||
// State 1.4: <div>PAR1\n\nPAR2 (see State 2)
|
||||
// ------------
|
||||
$token = array($this->_pStart());
|
||||
$this->_splitText($text, $token);
|
||||
} else {
|
||||
// State 1.5: \n<hr />
|
||||
// --
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// State 2: <div>PAR1... (similar to 1.4)
|
||||
|
@ -497,6 +497,13 @@ Bar</div>",
|
||||
);
|
||||
}
|
||||
|
||||
function testAutoClose() {
|
||||
$this->assertResult(
|
||||
'<p></p>
|
||||
<hr />'
|
||||
);
|
||||
}
|
||||
|
||||
function testErrorNeeded() {
|
||||
$this->config->set('HTML.Allowed', 'b');
|
||||
$this->expectError('Cannot enable AutoParagraph injector because p is not allowed');
|
||||
|
@ -123,8 +123,6 @@ asdf<b></b></p>
|
||||
|
||||
<p>asdf</p>
|
||||
|
||||
|
||||
|
||||
"
|
||||
);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user