diff options
Diffstat (limited to 'sql/field.cc')
-rw-r--r-- | sql/field.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/field.cc b/sql/field.cc index 0ea206a4fa7..134f3712d0d 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -1677,6 +1677,7 @@ int Field_long::store(const char *from,uint len,CHARSET_INFO *cs) !test_if_int(from,len,end,cs))) { current_thd->cuted_fields++; + error= 1; } #ifdef WORDS_BIGENDIAN if (table->db_low_byte_first) @@ -1932,7 +1933,10 @@ int Field_longlong::store(const char *from,uint len,CHARSET_INFO *cs) if (error || (from+len != end && current_thd->count_cuted_fields && !test_if_int(from,len,end,cs))) - current_thd->cuted_fields++; + { + current_thd->cuted_fields++; + error= 1; + } #ifdef WORDS_BIGENDIAN if (table->db_low_byte_first) { @@ -2416,6 +2420,7 @@ int Field_double::store(const char *from,uint len,CHARSET_INFO *cs) if (err || current_thd->count_cuted_fields && !test_if_real(from,len,cs)) { current_thd->cuted_fields++; + err= 1; } if (unsigned_flag && j < 0) { |