diff --git a/phpBB/search.php b/phpBB/search.php index 0e5437b27c..e2c68409c3 100644 --- a/phpBB/search.php +++ b/phpBB/search.php @@ -528,9 +528,7 @@ if ($keywords || $author || $search_id || $search_session_id) if ($hilit) { - // This was shamelessly 'borrowed' from volker at multiartstudio dot de - // via php.net's annotated manual - $row['post_text'] = str_replace('\"', '"', substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se', "preg_replace('#\b(" . str_replace('\\', '\\\\', $hilit) . ")\b#i', '\\\\1', '\\0')", '>' . $row['post_text'] . '<'), 1, -1)); + $row['post_text'] = preg_replace('#(?!<.*)(?]*>)#i', '\1', $row['post_text']); } $row['post_text'] = smiley_text($row['post_text']); diff --git a/phpBB/viewtopic.php b/phpBB/viewtopic.php index 52c2c2c128..b9bd6810ab 100644 --- a/phpBB/viewtopic.php +++ b/phpBB/viewtopic.php @@ -1171,9 +1171,7 @@ for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i) // Highlight active words (primarily for search) if ($highlight_match) { - // This was shamelessly 'borrowed' from volker at multiartstudio dot de - // via php.net's annotated manual - $message = str_replace('\"', '"', substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se', "preg_replace('#\b(" . str_replace('\\', '\\\\', addslashes($highlight_match)) . ")\b#i', '\\\\1', '\\0')", '>' . $message . '<'), 1, -1)); + $message = preg_replace('#(?!<.*)(?]*>)#i', '\1', $message); } if ($row['enable_html'] && $auth->acl_get('f_html', $forum_id))