Fix mismerge.

parent 3c6591ad
...@@ -8615,7 +8615,7 @@ bool create_field::init(THD *thd, char *fld_name, enum_field_types fld_type, ...@@ -8615,7 +8615,7 @@ bool create_field::init(THD *thd, char *fld_name, enum_field_types fld_type,
and 19 as length of 4.1 compatible representation. Silently and 19 as length of 4.1 compatible representation. Silently
shrink it to MAX_DATETIME_COMPRESSED_WIDTH. shrink it to MAX_DATETIME_COMPRESSED_WIDTH.
*/ */
DBUG_ASSERT(MAX_DATETIME_COMPRESSED_WIDTH < UINT_MAX); DBUG_ASSERT(MAX_DATETIME_COMPRESSED_WIDTH < UINT_MAX);
if (length != UINT_MAX) /* avoid overflow; is safe because of min() */ if (length != UINT_MAX) /* avoid overflow; is safe because of min() */
length= ((length+1)/2)*2; length= ((length+1)/2)*2;
length= min(length, MAX_DATETIME_COMPRESSED_WIDTH); length= min(length, MAX_DATETIME_COMPRESSED_WIDTH);
......
...@@ -531,7 +531,7 @@ Item *create_func_cast(Item *a, Cast_target cast_type, ...@@ -531,7 +531,7 @@ Item *create_func_cast(Item *a, Cast_target cast_type,
ulong decoded_size; ulong decoded_size;
errno= 0; errno= 0;
decoded_size= strtoul(c_len, NULL, 10); decoded_size= strtoul(c_len, NULL, 10);
if (errno != 0) if ((errno != 0) || (decoded_size > MAX_FIELD_BLOBLENGTH))
{ {
my_error(ER_TOO_BIG_DISPLAYWIDTH, MYF(0), "cast as char", MAX_FIELD_BLOBLENGTH); my_error(ER_TOO_BIG_DISPLAYWIDTH, MYF(0), "cast as char", MAX_FIELD_BLOBLENGTH);
return NULL; return NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment