From 5f0081b05bac2d12fe2d24e385bffc53daabeb5f Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 25 Mar 2013 09:17:14 +0400 Subject: tweak strip_harmful_tags() for php 5.3.2 compatibility (refs #620) --- include/functions.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/functions.php b/include/functions.php index 962ebb057..5582c2b0b 100644 --- a/include/functions.php +++ b/include/functions.php @@ -2685,16 +2685,22 @@ } if ($entry->hasAttributes()) { - foreach (iterator_to_array($entry->attributes) as $attr) { + $attrs_to_remove = array(); + + foreach ($entry->attributes as $attr) { if (strpos($attr->nodeName, 'on') === 0) { - $entry->removeAttributeNode($attr); + array_push($attrs_to_remove, $attr); } if (in_array($attr->nodeName, $disallowed_attributes)) { - $entry->removeAttributeNode($attr); + array_push($attrs_to_remove, $attr); } } + + foreach ($attrs_to_remove as $attr) { + $entry->removeAttributeNode($attr); + } } } -- cgit v1.2.3