Skip to content

Commit 28a0e37

Browse files
committed
Smilies optimization from Nazgul. fixes WordPress#3201 WordPress#3216
git-svn-id: https://develop.svn.wordpress.org/trunk@4360 602fd350-edb4-49c9-b593-d223f7449a82
1 parent fddb91d commit 28a0e37

2 files changed

Lines changed: 2 additions & 9 deletions

File tree

wp-includes/formatting.php

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -618,14 +618,7 @@ function convert_smilies($text) {
618618
if (get_option('use_smilies')) {
619619
// HTML loop taken from texturize function, could possible be consolidated
620620
$textarr = preg_split("/(<.*>)/U", $text, -1, PREG_SPLIT_DELIM_CAPTURE); // capture the tags as well as in between
621-
$stop = count($textarr);// loop stuff
622-
for ($i = 0; $i < $stop; $i++) {
623-
$content = $textarr[$i];
624-
if ((strlen($content) > 0) && ('<' != $content{0})) { // If it's not a tag
625-
$content = preg_replace($wp_smiliessearch, $wp_smiliesreplace, $content);
626-
}
627-
$output .= $content;
628-
}
621+
$output = implode('', preg_replace($wp_smiliessearch, $wp_smiliesreplace, $textarr));
629622
} else {
630623
// return default text.
631624
$output = $text;

wp-includes/vars.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787

8888
// generates smilies' search & replace arrays
8989
foreach($wpsmiliestrans as $smiley => $img) {
90-
$wp_smiliessearch[] = '/(\s|^)?'.preg_quote($smiley, '/').'(\b|\s)/';
90+
$wp_smiliessearch[] = '/(\s|^|[^<])?'.preg_quote($smiley, '/').'(\b|\s|$)/';
9191
$smiley_masked = htmlspecialchars( trim($smiley) , ENT_QUOTES);
9292
$wp_smiliesreplace[] = " <img src='" . get_option('siteurl') . "/wp-includes/images/smilies/$img' alt='$smiley_masked' class='wp-smiley' /> ";
9393
}

0 commit comments

Comments
 (0)