mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
avoid using GetTempFileName in a way it's documented to not work on windows
mysys/mf_tempfile.c: Try to avoid passing null as first parameter to GetTempFileName, since it's documented that it won't work.
This commit is contained in:
parent
4b4680898f
commit
5b770e3a98
1 changed files with 14 additions and 0 deletions
|
@ -59,11 +59,25 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
|
|||
myf MyFlags __attribute__((unused)))
|
||||
{
|
||||
File file= -1;
|
||||
#ifdef __WIN__
|
||||
TCHAR path_buf[MAX_PATH-14];
|
||||
#endif
|
||||
|
||||
DBUG_ENTER("create_temp_file");
|
||||
DBUG_PRINT("enter", ("dir: %s, prefix: %s", dir, prefix));
|
||||
#if defined (__WIN__)
|
||||
|
||||
/*
|
||||
Use GetTempPath to determine path for temporary files.
|
||||
This is because the documentation for GetTempFileName
|
||||
has the following to say about this parameter:
|
||||
"If this parameter is NULL, the function fails."
|
||||
*/
|
||||
if (!dir)
|
||||
{
|
||||
if(GetTempPath(sizeof(path_buf), path_buf) > 0)
|
||||
dir = path_buf;
|
||||
}
|
||||
/*
|
||||
Use GetTempFileName to generate a unique filename, create
|
||||
the file and release it's handle
|
||||
|
|
Loading…
Reference in a new issue