diff options
author | Alexander Barkov <bar@mnogosearch.org> | 2014-01-27 13:15:40 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mnogosearch.org> | 2014-01-27 13:15:40 +0400 |
commit | 7ea9d1e692c69c8715d98a9dbc44289d47a65447 (patch) | |
tree | bc9a513b2c8ce075e6da55796863ed0a43ea5d78 /sql/item_timefunc.cc | |
parent | 669c6620af9a9996a66ca9b339d4fb05eb6bf944 (diff) | |
download | mariadb-git-7ea9d1e692c69c8715d98a9dbc44289d47a65447.tar.gz |
MDEV-5458 RQG hits 'sql/tztime.cc:799: my_time_t sec_since_epoch(...):
Assertion `mon > 0 && mon < 13' failed.'
Diffstat (limited to 'sql/item_timefunc.cc')
-rw-r--r-- | sql/item_timefunc.cc | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/sql/item_timefunc.cc b/sql/item_timefunc.cc index b5d43786248..ebc61e02a82 100644 --- a/sql/item_timefunc.cc +++ b/sql/item_timefunc.cc @@ -2448,7 +2448,7 @@ bool Item_func_add_time::get_date(MYSQL_TIME *ltime, uint fuzzy_date) bool is_time= 0; long days, microseconds; longlong seconds; - int l_sign= sign, was_cut= 0; + int l_sign= sign; if (is_date) // TIMESTAMP function { @@ -2499,16 +2499,7 @@ bool Item_func_add_time::get_date(MYSQL_TIME *ltime, uint fuzzy_date) } ltime->hour+= days*24; - - MYSQL_TIME copy= *ltime; - Lazy_string_time str(©); - - check_time_range(ltime, decimals, &was_cut); - if (was_cut) - make_truncated_value_warning(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN, - &str, MYSQL_TIMESTAMP_TIME, NullS); - - return (null_value= 0); + return (null_value= adjust_time_range_with_warn(ltime, decimals)); } @@ -2546,7 +2537,7 @@ bool Item_func_timediff::get_date(MYSQL_TIME *ltime, uint fuzzy_date) DBUG_ASSERT(fixed == 1); longlong seconds; long microseconds; - int l_sign= 1, was_cut= 0; + int l_sign= 1; MYSQL_TIME l_time1,l_time2,l_time3; Lazy_string_time str(&l_time3); @@ -2590,12 +2581,7 @@ bool Item_func_timediff::get_date(MYSQL_TIME *ltime, uint fuzzy_date) goto null_date; *ltime= l_time3; - check_time_range(ltime, decimals, &was_cut); - - if (was_cut) - make_truncated_value_warning(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN, - &str, MYSQL_TIMESTAMP_TIME, NullS); - return (null_value= 0); + return (null_value= adjust_time_range_with_warn(ltime, decimals)); null_date: return (null_value= 1); |