WordPress.org

Make WordPress Core

Ticket #28564: miqro-28564-part2.patch

File miqro-28564-part2.patch, 1.9 KB (added by miqrogroove, 6 years ago)

Remove lazy quantifiers. Add more unit tests.

  • src/wp-includes/formatting.php

     
    198198                .       '(?(?=!--)'     // Is this a comment?
    199199                .               '.+?--\s*>'     // Find end of comment
    200200                .       '|'
    201                 .               '.+?>'          // Find end of element
     201                .               '[^>]+>'                // Find end of element
    202202                .       ')'
    203203                . '|'
    204204                .       '\['            // Find start of shortcode.
     
    206206                .       '(?:'
    207207                .               '[^\[\]<>]'     // Shortcodes do not contain other shortcodes.
    208208                .       '|'
    209                 .               '<.+?>'         // HTML elements permitted. Prevents matching ] before >.
     209                .               '<[^>]+>'       // HTML elements permitted. Prevents matching ] before >.
    210210                .       ')+'
    211211                .       '\]'            // Find end of shortcode.
    212212                .       '\]?'           // Shortcodes may end with ]]
  • tests/phpunit/tests/formatting/WPTexturize.php

     
    13051305                                'word <img src="http://example.com/wp-content/uploads/2014/06/image-300x216.gif" /> word', // Ensure we are not corrupting image URLs.
    13061306                                'word <img src="http://example.com/wp-content/uploads/2014/06/image-300x216.gif" /> word',
    13071307                        ),
     1308                        array(
     1309                                '[ do texturize "[quote]" here ]',
     1310                                '[ do texturize &#8220;[quote]&#8221; here ]',
     1311                        ),
     1312                        array(
     1313                                '[ regex catches this <a href="[quote]">here</a> ]',
     1314                                '[ regex catches this <a href="[quote]">here</a> ]',
     1315                        ),
     1316                        array(
     1317                                '[ but also catches the <b>styled "[quote]" here</b> ]',
     1318                                '[ but also catches the <b>styled &#8220;[quote]&#8221; here</b> ]',
     1319                        ),
     1320                        array(
     1321                                '[Let\'s get crazy<input>[plugin code="<a href=\'?a[]=100\'>hello</a>"]</input>world]',
     1322                                '[Let&#8217;s get crazy<input>[plugin code="<a href=\'?a[]=100\'>hello</a>"]</input>world]',
     1323                        ),
    13081324                );
    13091325        }
    13101326