diff options
author | unknown <serg@serg.mysql.com> | 2002-10-09 18:57:13 +0000 |
---|---|---|
committer | unknown <serg@serg.mysql.com> | 2002-10-09 18:57:13 +0000 |
commit | 61c50cf761718fa55092ac4ba1c041e0732db2e5 (patch) | |
tree | f591efba5b54649f79593c0ab2fbbd3bd28179b1 /myisam | |
parent | efacfcade07a9f75bfa801d109829a52a1666e17 (diff) | |
download | mariadb-git-61c50cf761718fa55092ac4ba1c041e0732db2e5.tar.gz |
fixed repair_by_sort FULLTEXT bug
Diffstat (limited to 'myisam')
-rw-r--r-- | myisam/mi_check.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/myisam/mi_check.c b/myisam/mi_check.c index 4669566fc8f..9e591325c1c 100644 --- a/myisam/mi_check.c +++ b/myisam/mi_check.c @@ -2529,7 +2529,7 @@ static int sort_ft_key_read(MI_SORT_PARAM *sort_param, void *key) if (!sort_param->wordlist) { - do + for (;;) { my_free((char*) wptr, MYF(MY_ALLOW_ZERO_PTR)); if ((error=sort_get_next_record(sort_param))) @@ -2537,9 +2537,10 @@ static int sort_ft_key_read(MI_SORT_PARAM *sort_param, void *key) if (!(wptr=_mi_ft_parserecord(info,sort_param->key, key,sort_param->record))) DBUG_RETURN(1); + if (wptr->pos) + break; error=sort_write_record(sort_param); } - while (!wptr->pos); sort_param->wordptr=sort_param->wordlist=wptr; } else @@ -2560,6 +2561,7 @@ static int sort_ft_key_read(MI_SORT_PARAM *sort_param, void *key) { my_free((char*) sort_param->wordlist, MYF(0)); sort_param->wordlist=0; + error=sort_write_record(sort_param); } else sort_param->wordptr=(void*)wptr; |