js_escape improvements from Alexander Concha. Catches &#39 &#039 ' ' ' ' &#x000027 etc. for 2.0.x

git-svn-id: http://svn.automattic.com/wordpress/branches/2.0@5736 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
markjaquith 2007-06-20 19:13:29 +00:00
parent ac5691b028
commit 585d7513a8

View File

@ -1067,7 +1067,7 @@ function clean_url( $url, $protocols = null ) {
// Escape single quotes, specialchar double quotes, and fix line endings.
function js_escape($text) {
$safe_text = wp_specialchars($text, 'double');
$safe_text = str_replace(''', "'", $safe_text);
$safe_text = preg_replace('/&#(x)?0*(?(1)27|39);?/i', "'", stripslashes($safe_text));
$safe_text = preg_replace("/\r?\n/", "\\n", addslashes($safe_text));
return apply_filters('js_escape', $safe_text, $text);
}