summaryrefslogtreecommitdiff
path: root/sql/field.cc
diff options
context:
space:
mode:
authorunknown <gshchepa/uchum@gleb.loc>2007-07-26 03:33:43 +0500
committerunknown <gshchepa/uchum@gleb.loc>2007-07-26 03:33:43 +0500
commit85958a805bb09e78e5bf05fedebc5f80c75f9106 (patch)
tree9586be2beae68dcf0a316792398609129103c820 /sql/field.cc
parent40932e9f2fcf36dbdbc22eb103921d0ea9111d8b (diff)
parent7193ebc0b6a5b4339d7c509e8849b3627ce4b6d8 (diff)
downloadmariadb-git-85958a805bb09e78e5bf05fedebc5f80c75f9106.tar.gz
Merge gleb.loc:/home/uchum/work/bk/5.0
into gleb.loc:/home/uchum/work/bk/5.0-opt mysql-test/t/create.test: Auto merged sql/field.cc: Auto merged sql/sql_base.cc: Auto merged sql/table.cc: Auto merged mysql-test/r/create.result: Merge with 5.0 (main).
Diffstat (limited to 'sql/field.cc')
-rw-r--r--sql/field.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/field.cc b/sql/field.cc
index 78b2515c55f..3f74210807b 100644
--- a/sql/field.cc
+++ b/sql/field.cc
@@ -7641,8 +7641,11 @@ int Field_enum::store(longlong nr, bool unsigned_val)
if ((ulonglong) nr > typelib->count || nr == 0)
{
set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, WARN_DATA_TRUNCATED, 1);
- nr=0;
- error=1;
+ if (nr != 0 || table->in_use->count_cuted_fields)
+ {
+ nr= 0;
+ error= 1;
+ }
}
store_type((ulonglong) (uint) nr);
return error;