diff options
Diffstat (limited to 'sql/sql_table.cc')
-rw-r--r-- | sql/sql_table.cc | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/sql/sql_table.cc b/sql/sql_table.cc index f2ef9d02bab..cf788cee05f 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -437,8 +437,6 @@ int mysql_create_table(THD *thd,const char *db, const char *table_name, column->field_name); DBUG_RETURN(-1); } - if (key->type == Key::FULLTEXT) - column->length=1; /* ft-code ignores it anyway :-) */ if (f_is_blob(sql_field->pack_flag)) { if (!(file->option_flag() & HA_BLOB_KEY)) @@ -449,10 +447,15 @@ int mysql_create_table(THD *thd,const char *db, const char *table_name, } if (!column->length) { - my_printf_error(ER_BLOB_KEY_WITHOUT_LENGTH, - ER(ER_BLOB_KEY_WITHOUT_LENGTH),MYF(0), - column->field_name); - DBUG_RETURN(-1); + if (key->type == Key::FULLTEXT) + column->length=1; /* ft-code ignores it anyway :-) */ + else + { + my_printf_error(ER_BLOB_KEY_WITHOUT_LENGTH, + ER(ER_BLOB_KEY_WITHOUT_LENGTH),MYF(0), + column->field_name); + DBUG_RETURN(-1); + } } } if (!(sql_field->flags & NOT_NULL_FLAG)) |