summaryrefslogtreecommitdiff
path: root/sql/item_cmpfunc.cc
diff options
context:
space:
mode:
authorJonathan Perkin <jonathan.perkin@oracle.com>2011-02-08 14:59:03 +0100
committerJonathan Perkin <jonathan.perkin@oracle.com>2011-02-08 14:59:03 +0100
commitd06e324e66d7ee21f556ebc09024f4afa65791cd (patch)
treed87bb4b1cece4e1570ba257393e94057e79bd518 /sql/item_cmpfunc.cc
parent1e921bb2927a7c89b7ff209afba41a3db10e3351 (diff)
parente1d5d26d715a1067a60fb01e78b2fdfdc68d8663 (diff)
downloadmariadb-git-d06e324e66d7ee21f556ebc09024f4afa65791cd.tar.gz
Merge from mysql-5.5.9-release
Diffstat (limited to 'sql/item_cmpfunc.cc')
-rw-r--r--sql/item_cmpfunc.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/item_cmpfunc.cc b/sql/item_cmpfunc.cc
index 4cfea6556dc..67635c73b43 100644
--- a/sql/item_cmpfunc.cc
+++ b/sql/item_cmpfunc.cc
@@ -1208,9 +1208,12 @@ get_year_value(THD *thd, Item ***item_arg, Item **cache_arg,
value of 2000.
*/
Item *real_item= item->real_item();
- if (!(real_item->type() == Item::FIELD_ITEM &&
- ((Item_field *)real_item)->field->type() == MYSQL_TYPE_YEAR &&
- ((Item_field *)real_item)->field->field_length == 4))
+ Field *field= NULL;
+ if (real_item->type() == Item::FIELD_ITEM)
+ field= ((Item_field *)real_item)->field;
+ else if (real_item->type() == Item::CACHE_ITEM)
+ field= ((Item_cache *)real_item)->field();
+ if (!(field && field->type() == MYSQL_TYPE_YEAR && field->field_length == 4))
{
if (value < 70)
value+= 100;