mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
fix for bug#15828
problem was not checking 2nd parameter of str_to_date against NULL mysql-test/r/date_formats.result: bk commit
This commit is contained in:
parent
4e195cbd52
commit
25e32d83d6
3 changed files with 14 additions and 1 deletions
|
@ -464,3 +464,9 @@ d1 d2
|
|||
02 February
|
||||
01 January
|
||||
drop table t1;
|
||||
select str_to_date( 1, NULL );
|
||||
str_to_date( 1, NULL )
|
||||
NULL
|
||||
select str_to_date( NULL, 1 );
|
||||
str_to_date( NULL, 1 )
|
||||
NULL
|
||||
|
|
|
@ -268,4 +268,11 @@ insert into t1 (f1) values ("2005-01-01");
|
|||
insert into t1 (f1) values ("2005-02-01");
|
||||
select date_format(f1, "%m") as d1, date_format(f1, "%M") as d2 from t1 order by date_format(f1, "%M");
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #15828
|
||||
#
|
||||
select str_to_date( 1, NULL );
|
||||
select str_to_date( NULL, 1 );
|
||||
|
||||
# End of 4.1 tests
|
||||
|
|
|
@ -2750,7 +2750,7 @@ void Item_func_str_to_date::fix_length_and_dec()
|
|||
cached_field_type= MYSQL_TYPE_STRING;
|
||||
max_length= MAX_DATETIME_FULL_WIDTH*MY_CHARSET_BIN_MB_MAXLEN;
|
||||
cached_timestamp_type= MYSQL_TIMESTAMP_NONE;
|
||||
if ((const_item= args[1]->const_item()))
|
||||
if ((const_item= args[1]->const_item()) && !args[1]->null_value)
|
||||
{
|
||||
format= args[1]->val_str(&format_str);
|
||||
cached_format_type= get_date_time_result_type(format->ptr(),
|
||||
|
|
Loading…
Reference in a new issue