Index: wp-includes/functions.php
===================================================================
--- wp-includes/functions.php	(revision 15646)
+++ wp-includes/functions.php	(working copy)
@@ -234,27 +234,24 @@
 	$data = trim( $data );
  	if ( 'N;' == $data )
 		return true;
-	if ( function_exists('strpbrk') ) {
-		if ( strlen($data) > 1 && strpbrk($data,'adObis') == $data && $data[1] == ':' ) {
-			$badions = array();
-			$badions[1] = $data[0];
-		} else {
-			return false;
-		}
-	} elseif ( !preg_match( '/^([adObis]):/', $data, $badions ) ) {
+	if ( strlen( $data ) < 4 )
 		return false;
-	}
-	switch ( $badions[1] ) {
+	if ( ':' !== $data[1] )
+		return false;
+	$token = $data[0];
+	if ( false === strpos( 'adObis', $token ) )
+		return false;
+	switch ( $token ) {
 		case 'a' :
 		case 'O' :
 		case 's' :
-			if ( preg_match( "/^{$badions[1]}:[0-9]+:.*[;}]\$/s", $data ) )
+			if ( preg_match( "/^{$token}:[0-9]+:.*[;}]\$/s", $data ) )
 				return true;
 			break;
 		case 'b' :
 		case 'i' :
 		case 'd' :
-			if ( preg_match( "/^{$badions[1]}:[0-9.E-]+;\$/", $data ) )
+			if ( preg_match( "/^{$token}:[0-9.E-]+;\$/", $data ) )
 				return true;
 			break;
 	}
