Commit 70b97a98 authored by monty@mashka.mysql.fi's avatar monty@mashka.mysql.fi

On windows, delete any conflicting 'to' files on rename(from,to)

This fixes a bug with REPAIR TABLE t1 USE_FRM on windows.
parent 00e005cb
...@@ -46,6 +46,13 @@ int my_rename(const char *from, const char *to, myf MyFlags) ...@@ -46,6 +46,13 @@ int my_rename(const char *from, const char *to, myf MyFlags)
} }
#endif #endif
#if defined(HAVE_RENAME) #if defined(HAVE_RENAME)
#ifdef __WIN__
/*
On windows we can't rename over an existing file:
Remove any conflicting files:
*/
(void) my_delete(to, MYF(0));
#endif
if (rename(from,to)) if (rename(from,to))
#else #else
if (link(from, to) || unlink(from)) if (link(from, to) || unlink(from))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment