WordPress.org

Make WordPress Core

Ticket #17571: 17571.3.patch

File 17571.3.patch, 2.4 KB (added by kurtpayne, 4 years ago)

Just address the curling issue, do not strip slashes

  • wp-includes/formatting.php

     
    7575 
    7676                $dynamic = array(); 
    7777                if ( "'" != $apos ) { 
    78                         $dynamic[ '/\'(\d\d(?:’|\')?s)/' ] = $apos . '$1'; // '99's 
    79                         $dynamic[ '/\'(\d)/'                   ] = $apos . '$1'; // '99 
     78                        $dynamic[ '/\'(\d\d(?:’|\')?s)/'    ] = $apos . '$1'; // '99's 
     79                        $dynamic[ '/\'(\d)/'                      ] = $apos . '$1'; // '99 
    8080                } 
    8181                if ( "'" != $opening_single_quote ) 
    82                         $dynamic[ '/(\s|\A|[([{<]|")\'/'       ] = '$1' . $opening_single_quote; // opening single quote, even after (, {, <, [ 
     82                        $dynamic[ '/(\s|\A|[([{<]|")(\\\\?)\'/'   ] = '$1$2'. $opening_single_quote; // opening single quote, even after (, {, <, [ 
    8383                if ( '"' != $double_prime ) 
    84                         $dynamic[ '/(\d)"/'                    ] = '$1' . $double_prime; // 9" (double prime) 
     84                        $dynamic[ '/(\d)"/'                       ] = '$1' . $double_prime; // 9" (double prime) 
    8585                if ( "'" != $prime ) 
    86                         $dynamic[ '/(\d)\'/'                   ] = '$1' . $prime; // 9' (prime) 
     86                        $dynamic[ '/(\d)\'/'                      ] = '$1' . $prime; // 9' (prime) 
    8787                if ( "'" != $apos ) 
    88                         $dynamic[ '/(\S)\'([^\'\s])/'          ] = '$1' . $apos . '$2'; // apostrophe in a word 
     88                        $dynamic[ '/(\S)\'([^\'\s])/'             ] = '$1' . $apos . '$2'; // apostrophe in a word 
    8989                if ( '"' != $opening_quote ) 
    90                         $dynamic[ '/(\s|\A|[([{<])"(?!\s)/'    ] = '$1' . $opening_quote . '$2'; // opening double quote, even after (, {, <, [ 
     90                        $dynamic[ '/(\s|\A|[([{<])(\\\\?)"(?!\s)/'] = '$1$2' . $opening_quote; // opening double quote, even after (, {, <, [ 
    9191                if ( '"' != $closing_quote ) 
    92                         $dynamic[ '/"(\s|\S|\Z)/'              ] = $closing_quote . '$1'; // closing double quote 
     92                        $dynamic[ '/(\\\\?)"(\s|\S|\Z)/'          ] = '$1' . $closing_quote . '$2'; // closing double quote 
    9393                if ( "'" != $closing_single_quote ) 
    94                         $dynamic[ '/\'([\s.]|\Z)/'             ] = $closing_single_quote . '$2'; // closing single quote 
     94                        $dynamic[ '/(\\\\?)\'([\s.]|\Z)/'         ] = '$1' . $closing_single_quote . '$2'; // closing single quote 
    9595 
    96                 $dynamic[ '/\b(\d+)x(\d+)\b/'              ] = '$1&#215;$2'; // 9x9 (times) 
     96                $dynamic[ '/\b(\d+)x(\d+)\b/'                 ] = '$1&#215;$2'; // 9x9 (times) 
    9797 
    9898                $dynamic_characters = array_keys( $dynamic ); 
    9999                $dynamic_replacements = array_values( $dynamic );