WordPress.org

Make WordPress Core

Ticket #7386: 7386.002.diff

File 7386.002.diff, 1.1 KB (added by markjaquith, 7 years ago)
  • wp-includes/formatting.php

     
    11471147        $original_url = $url; 
    11481148 
    11491149        if ('' == $url) return $url; 
    1150         $url = preg_replace('|[^a-z0-9-~+_.?#=!&;,/:%@()\\x80-\\xff]|i', '', $url); 
     1150        $url = preg_replace('|[^a-z0-9-~+_.?#=!&;,/:%@$*\'()\\x80-\\xff]|i', '', $url); 
    11511151        $strip = array('%0d', '%0a'); 
    11521152        $url = str_replace($strip, '', $url); 
    11531153        $url = str_replace(';//', '://', $url); 
     
    11591159                substr( $url, 0, 1 ) != '/' && !preg_match('/^[a-z0-9-]+?\.php/i', $url) ) 
    11601160                $url = 'http://' . $url; 
    11611161 
    1162         // Replace ampersands ony when displaying. 
    1163         if ( 'display' == $context ) 
     1162        // Replace ampersands and single quotes ony when displaying. 
     1163        if ( 'display' == $context ) { 
    11641164                $url = preg_replace('/&([^#])(?![a-z]{2,8};)/', '&$1', $url); 
     1165                $url = str_replace( "'", ''', $url ); 
     1166        } 
    11651167 
    11661168        if ( !is_array($protocols) ) 
    11671169                $protocols = array('http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet');