Make WordPress Core


Ignore:
Timestamp:
06/10/2014 02:17:24 AM (12 years ago)
Author:
wonderboymusic
Message:

In wptexturize(), don't convert C-style hexadecimals to mathematical ×.

Adds unit tests.

Props harrym, kurtpayne, miqrogroove.
Fixes #19308.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/formatting.php

    r28718 r28719  
    181181            $curl = preg_replace($dynamic_characters, $dynamic_replacements, $curl);
    182182
    183             // 9x9 (times)
    184             if ( 1 === preg_match( '/(?<=\d)x\d/', $text ) ) {
     183            // 9x9 (times), but never 0x9999
     184            if ( 1 === preg_match( '/(?<=\d)x-?\d/', $text ) ) {
    185185                // Searching for a digit is 10 times more expensive than for the x, so we avoid doing this one!
    186                 $curl = preg_replace( '/\b(\d+)x(\d+)\b/', '$1&#215;$2', $curl );
     186                $curl = preg_replace( '/\b(\d(?(?<=0)[\d\.,]+|[\d\.,]*))x(-?\d[\d\.,]*)\b/', '$1&#215;$2', $curl );
    187187            }
    188188        }
Note: See TracChangeset for help on using the changeset viewer.