mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-18402 Assertion `sec.sec() <= 59' failed in Item_func_maketime::get_date
This commit is contained in:
@ -6336,3 +6336,12 @@ Warnings:
|
|||||||
Warning 1292 Truncated incorrect DECIMAL value: 'foo'
|
Warning 1292 Truncated incorrect DECIMAL value: 'foo'
|
||||||
Warning 1292 Truncated incorrect DECIMAL value: 'foo'
|
Warning 1292 Truncated incorrect DECIMAL value: 'foo'
|
||||||
SET time_zone=DEFAULT;
|
SET time_zone=DEFAULT;
|
||||||
|
#
|
||||||
|
# MDEV-18402 Assertion `sec.sec() <= 59' failed in Item_func_maketime::get_date
|
||||||
|
#
|
||||||
|
SELECT MAKETIME('01', '01', LEAST( -100, NULL ));
|
||||||
|
MAKETIME('01', '01', LEAST( -100, NULL ))
|
||||||
|
NULL
|
||||||
|
SELECT CONCAT(MAKETIME('01', '01', LEAST( -100, NULL )));
|
||||||
|
CONCAT(MAKETIME('01', '01', LEAST( -100, NULL )))
|
||||||
|
NULL
|
||||||
|
@ -3162,3 +3162,11 @@ SELECT TIME('- 01:00:00'), TIME('- 1 01:00:00');
|
|||||||
SET time_zone='+00:00';
|
SET time_zone='+00:00';
|
||||||
SELECT NULLIF(FROM_UNIXTIME('foo'), '2012-12-12 21:10:14');
|
SELECT NULLIF(FROM_UNIXTIME('foo'), '2012-12-12 21:10:14');
|
||||||
SET time_zone=DEFAULT;
|
SET time_zone=DEFAULT;
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-18402 Assertion `sec.sec() <= 59' failed in Item_func_maketime::get_date
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
SELECT MAKETIME('01', '01', LEAST( -100, NULL ));
|
||||||
|
SELECT CONCAT(MAKETIME('01', '01', LEAST( -100, NULL )));
|
||||||
|
@ -2595,7 +2595,7 @@ bool Item_func_maketime::get_date(THD *thd, MYSQL_TIME *ltime, date_mode_t fuzzy
|
|||||||
longlong minute= args[1]->val_int();
|
longlong minute= args[1]->val_int();
|
||||||
VSec9 sec(thd, args[2], "seconds", 59);
|
VSec9 sec(thd, args[2], "seconds", 59);
|
||||||
|
|
||||||
DBUG_ASSERT(sec.sec() <= 59);
|
DBUG_ASSERT(sec.is_null() || sec.sec() <= 59);
|
||||||
if (args[0]->null_value || args[1]->null_value || sec.is_null() ||
|
if (args[0]->null_value || args[1]->null_value || sec.is_null() ||
|
||||||
minute < 0 || minute > 59 || sec.neg() || sec.truncated())
|
minute < 0 || minute > 59 || sec.neg() || sec.truncated())
|
||||||
return (null_value= 1);
|
return (null_value= 1);
|
||||||
|
Reference in New Issue
Block a user