diff options
author | unknown <monty@hundin.mysql.fi> | 2002-11-07 04:03:44 +0200 |
---|---|---|
committer | unknown <monty@hundin.mysql.fi> | 2002-11-07 04:03:44 +0200 |
commit | 4060f083076dcac09a37148d2f733b33fa825f2b (patch) | |
tree | 3b9ae7230972e46b9789ccf84dbfed194cee9298 /sql/field.cc | |
parent | b0da9dbd24a7fdd89a2471be1fdcf889c3dfc7d6 (diff) | |
parent | 72413e7f81cb87327d8bb2094a43d66578cd1632 (diff) | |
download | mariadb-git-4060f083076dcac09a37148d2f733b33fa825f2b.tar.gz |
Merge work:/my/mysql-4.0 into hundin.mysql.fi:/my/mysql-4.0
sql/field.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
Diffstat (limited to 'sql/field.cc')
-rw-r--r-- | sql/field.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sql/field.cc b/sql/field.cc index 79c47886b7c..b80428b36c4 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -4879,6 +4879,7 @@ uint pack_length_to_packflag(uint type) Field *make_field(char *ptr, uint32 field_length, uchar *null_pos, uchar null_bit, uint pack_flag, + enum_field_types field_type, Field::utype unireg_check, TYPELIB *interval, const char *field_name, @@ -4904,6 +4905,9 @@ Field *make_field(char *ptr, uint32 field_length, return new Field_blob(ptr,null_pos,null_bit, unireg_check, field_name, table, pack_length,f_is_binary(pack_flag) != 0); + if (f_is_geom(pack_flag)) + return 0; + if (interval) { if (f_is_enum(pack_flag)) @@ -4917,7 +4921,7 @@ Field *make_field(char *ptr, uint32 field_length, } } - switch ((enum enum_field_types) f_packtype(pack_flag)) { + switch (field_type) { case FIELD_TYPE_DECIMAL: return new Field_decimal(ptr,field_length,null_pos,null_bit, unireg_check, field_name, table, @@ -4980,10 +4984,11 @@ Field *make_field(char *ptr, uint32 field_length, return new Field_datetime(ptr,null_pos,null_bit, unireg_check, field_name, table); case FIELD_TYPE_NULL: - default: // Impossible (Wrong version) return new Field_null(ptr,field_length,unireg_check,field_name,table); + default: // Impossible (Wrong version) + break; } - return 0; // Impossible (Wrong version) + return 0; // Impossible } |