diff options
author | jimw@mysql.com <> | 2005-07-18 16:12:44 -0700 |
---|---|---|
committer | jimw@mysql.com <> | 2005-07-18 16:12:44 -0700 |
commit | dd2f631ec45b955af458f8a3b1f9d7d7d0a4fa73 (patch) | |
tree | 84495874ff2aa17253ec5fef315c2538a1c75871 /libmysql | |
parent | a25c4ead106bf36d0c9a5f18f9477bf238bcc05d (diff) | |
download | mariadb-git-dd2f631ec45b955af458f8a3b1f9d7d7d0a4fa73.tar.gz |
Fix number to date conversion so it always honors the NO_ZERO_DATE,
NO_ZERO_IN_DATE, and INVALID_DATES bits of SQL_MODE. (Bug #5906)
Diffstat (limited to 'libmysql')
-rw-r--r-- | libmysql/libmysql.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index 2074abd0f85..4127600babc 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -3600,7 +3600,7 @@ static void fetch_string_with_conversion(MYSQL_BIND *param, char *value, case MYSQL_TYPE_TIMESTAMP: { MYSQL_TIME *tm= (MYSQL_TIME *)buffer; - (void) str_to_datetime(value, length, tm, 0, &err); + (void) str_to_datetime(value, length, tm, TIME_FUZZY_DATE, &err); *param->error= test(err) && (param->buffer_type == MYSQL_TYPE_DATE && tm->time_type != MYSQL_TIMESTAMP_DATE); break; @@ -3718,7 +3718,8 @@ static void fetch_long_with_conversion(MYSQL_BIND *param, MYSQL_FIELD *field, case MYSQL_TYPE_DATETIME: { int error; - value= number_to_datetime(value, (MYSQL_TIME *) buffer, 1, &error); + value= number_to_datetime(value, (MYSQL_TIME *) buffer, TIME_FUZZY_DATE, + &error); *param->error= test(error); break; } |