summaryrefslogtreecommitdiff
path: root/sql/table.cc
diff options
context:
space:
mode:
authorunknown <svoj@mysql.com/april.(none)>2007-08-03 03:50:19 +0500
committerunknown <svoj@mysql.com/april.(none)>2007-08-03 03:50:19 +0500
commit6b205f93b00e1ede922c680252d64d97a195c343 (patch)
tree3b253ccc925f299595e87cd523d702b8e03428ef /sql/table.cc
parent4a19d50071c024c08c2071c13302f92a0124d723 (diff)
downloadmariadb-git-6b205f93b00e1ede922c680252d64d97a195c343.tar.gz
BUG#27040 - Incorrect FTS parser name output
When a table uses two (or more) fulltext keys with different fulltext parsers, all fulltext keys (excluding those that use built-in parser) were using first parser that was mentioned in .frm. With this fix fulltext keys use proper (assigned during create table) fulltext parser. This code was contributed by Yoshinori Matsunobu ymatsunobu@mysql.com on 2007-03-12 The copyright was assigned and transferred under the terms of the MySQL Contributor License Agreement. sql/table.cc: Shift extra data segment buffer pointer by parser name length to restore next key parser name correctly.
Diffstat (limited to 'sql/table.cc')
-rw-r--r--sql/table.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/table.cc b/sql/table.cc
index e6f9b1086c7..1e8a37faaa6 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -918,6 +918,7 @@ static int open_binary_frm(THD *thd, TABLE_SHARE *share, uchar *head,
}
parser_name.str= (char*) next_chunk;
parser_name.length= strlen((char*) next_chunk);
+ next_chunk+= parser_name.length + 1;
keyinfo->parser= my_plugin_lock_by_name(NULL, &parser_name,
MYSQL_FTPARSER_PLUGIN);
if (! keyinfo->parser)