Commit fd7e5741 authored by Francois Gouget's avatar Francois Gouget Committed by Alexandre Julliard

shell32/tests: Fix the temporary directory creation in shlexec.

Since the test no longer uses a random directory name, the directory is more likely to exist already. So use it even if it already exists. Also on some Windows versions (e.g. Windos 2008) GetLongPathName() does not return the long name if the path does not exist. So do the conversion before appending the new directory name. Signed-off-by: 's avatarFrancois Gouget <fgouget@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent e2a1f00a
......@@ -2693,16 +2693,17 @@ static void init_test(void)
strcpy(tmpdir, "c:\\");
else
GetTempPathA(sizeof(tmpdir), tmpdir);
GetLongPathNameA(tmpdir, tmpdir, sizeof(tmpdir));
/* In case of a failure it is necessary to show the path that was passed to
* ShellExecute(). That means the paths must not be randomized so as not to
* prevent the TestBot from detecting new failures.
*/
strcat(tmpdir, "wtShlexecDir");
GetLongPathNameA(tmpdir, tmpdir, sizeof(tmpdir));
DeleteFileA( tmpdir );
rc = CreateDirectoryA( tmpdir, NULL );
ok( rc, "failed to create %s err %u\n", tmpdir, GetLastError() );
ok( rc || GetLastError() == ERROR_ALREADY_EXISTS,
"failed to create %s err %u\n", tmpdir, GetLastError() );
/* Set %TMPDIR% for the tests */
SetEnvironmentVariableA("TMPDIR", tmpdir);
......
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