Check that search value is scalar before parsing.

Prevents PHP notices when non-scalar values are passed.

Includes unit tests.

Props tivnet.
Fixes #29736.
Built from https://develop.svn.wordpress.org/trunk@29912


git-svn-id: http://core.svn.wordpress.org/trunk@29666 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Boone Gorges 2014-10-16 03:32:20 +00:00
parent 6de7c43ab3
commit 1470990892
1 changed files with 2 additions and 1 deletions

View File

@ -1574,8 +1574,9 @@ class WP_Query {
if ( '' !== $qv['menu_order'] ) $qv['menu_order'] = absint($qv['menu_order']); if ( '' !== $qv['menu_order'] ) $qv['menu_order'] = absint($qv['menu_order']);
// Fairly insane upper bound for search string lengths. // Fairly insane upper bound for search string lengths.
if ( ! empty( $qv['s'] ) && strlen( $qv['s'] ) > 1600 ) if ( ! is_scalar( $qv['s'] ) || ( ! empty( $qv['s'] ) && strlen( $qv['s'] ) > 1600 ) ) {
$qv['s'] = ''; $qv['s'] = '';
}
// Compat. Map subpost to attachment. // Compat. Map subpost to attachment.
if ( '' != $qv['subpost'] ) if ( '' != $qv['subpost'] )