Make WordPress Core

Ticket #17129: 17129.diff

File 17129.diff, 699 bytes (added by markjaquith, 13 years ago)
  • wp-includes/functions.php

     
    288288        if ( !is_string( $data ) )
    289289                return false;
    290290        $data = trim( $data );
    291         if ( preg_match( '/^s:[0-9]+:.*;$/s', $data ) ) // this should fetch all serialized strings
     291        $length = strlen( $data );
     292        if ( $length < 4 )
     293                return false;
     294        elseif ( ':' !== $data[1] )
     295                return false;
     296        elseif ( ';' !== $data[$length-1] )
     297                return false;
     298        elseif ( $data[0] !== 's' )
     299                return false;
     300        elseif ( '"' !== $data[$length-2] )
     301                return false;
     302        else
    292303                return true;
    293         return false;
    294304}
    295305
    296306/**