diff options
author | unknown <jimw@mysql.com> | 2005-08-12 11:44:25 -0700 |
---|---|---|
committer | unknown <jimw@mysql.com> | 2005-08-12 11:44:25 -0700 |
commit | 4d0fad0dc28e3aada165db75755cd962aace7172 (patch) | |
tree | 46a3d3b705ec1106ed09e4841906f6893de2efad /myisam | |
parent | d5ee74c92de780835f5acbc044cd34dfb6ee3612 (diff) | |
download | mariadb-git-4d0fad0dc28e3aada165db75755cd962aace7172.tar.gz |
Make sure to clean up temporary files in myisampack even when the
-T option is used. (Bug #12235)
myisam/myisampack.c:
Clean up temporary files when -T was used.
Diffstat (limited to 'myisam')
-rw-r--r-- | myisam/myisampack.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/myisam/myisampack.c b/myisam/myisampack.c index 88f38be3c54..405c69544e7 100644 --- a/myisam/myisampack.c +++ b/myisam/myisampack.c @@ -609,14 +609,22 @@ static int compress(PACK_MRG_INFO *mrg,char *result_table) else error=my_rename(new_name,org_name,MYF(MY_WME)); if (!error) + { VOID(my_copystat(temp_name,org_name,MYF(MY_COPYTIME))); + if (tmp_dir[0]) + VOID(my_delete(new_name,MYF(MY_WME))); + } } } else { if (tmp_dir[0]) + { error=my_copy(new_name,org_name, MYF(MY_WME | MY_HOLD_ORIGINAL_MODES | MY_COPYTIME)); + if (!error) + VOID(my_delete(new_name,MYF(MY_WME))); + } else error=my_redel(org_name,new_name,MYF(MY_WME | MY_COPYTIME)); } |