diff --git a/myisam/mi_check.c b/myisam/mi_check.c index fd327b96e6d4ff127da65e76f9cc853dd2c4c4bf..587f90e0929affd2a8a739672bd961e2fe18b2d3 100644 --- a/myisam/mi_check.c +++ b/myisam/mi_check.c @@ -1111,6 +1111,7 @@ int mi_repair(MI_CHECK *param, register MI_INFO *info, SORT_INFO *sort_info= ¶m->sort_info; DBUG_ENTER("mi_repair"); + sort_info->buff=sort_info->record=0; start_records=info->state->records; new_header_length=(param->testflag & T_UNPACK) ? 0L : share->pack.header_length; @@ -1329,9 +1330,7 @@ int mi_repair(MI_CHECK *param, register MI_INFO *info, } mi_mark_crashed_on_repair(info); } - if (sort_info->record) - my_free(sort_info->record,MYF(0)); - + my_free(sort_info->record,MYF(MY_ALLOW_ZERO_PTR)); my_free(sort_info->buff,MYF(MY_ALLOW_ZERO_PTR)); VOID(end_io_cache(¶m->read_cache)); info->opt_flag&= ~(READ_CACHE_USED | WRITE_CACHE_USED);