From 53a2c3a18178956837dc9ebc072424cb98bc804e Mon Sep 17 00:00:00 2001 From: Scott Taylor Date: Fri, 8 Nov 2013 23:11:08 +0000 Subject: [PATCH] Produce proper `CAST` for `DECIMAL` and `NUMERIC` in Meta Query. Adds a bunch of unit tests. Props ericlewis. Fixes #23033. Built from https://develop.svn.wordpress.org/trunk@26055 git-svn-id: http://core.svn.wordpress.org/trunk@25980 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/meta.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wp-includes/meta.php b/wp-includes/meta.php index 357c12c112..82cb49144a 100644 --- a/wp-includes/meta.php +++ b/wp-includes/meta.php @@ -707,7 +707,7 @@ class WP_Meta_Query { $meta_type = strtoupper( $type ); - if ( ! in_array( $meta_type, array( 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED', 'NUMERIC' ) ) ) + if ( ! preg_match( '/^(?:BINARY|CHAR|DATE|DATETIME|SIGNED|UNSIGNED|TIME|NUMERIC(?:\(\d+(?:,\s?\d+)?\))?|DECIMAL(?:\(\d+(?:,\s?\d+)?\))?)$/', $meta_type ) ) return 'CHAR'; if ( 'NUMERIC' == $meta_type )