Henri Verbeet : ntdll/tests: Disable filesystem redirection for test_file_name_information().
Alexandre Julliard
julliard at winehq.org
Thu Nov 19 10:15:22 CST 2009
Module: wine
Branch: master
Commit: 832aacd86601d9854b88c79e038feae617fb236d
URL: http://source.winehq.org/git/wine.git/?a=commit;h=832aacd86601d9854b88c79e038feae617fb236d
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Thu Nov 19 11:41:22 2009 +0100
ntdll/tests: Disable filesystem redirection for test_file_name_information().
Otherwise we get the syswow64 directory instead on 64-bit Windows.
---
dlls/ntdll/tests/file.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index 06e35b4..ac19d2e 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -45,6 +45,8 @@ static BOOL (WINAPI * pGetVolumePathNameW)(LPCWSTR, LPWSTR, DWORD);
static NTSTATUS (WINAPI *pRtlFreeUnicodeString)( PUNICODE_STRING );
static VOID (WINAPI *pRtlInitUnicodeString)( PUNICODE_STRING, LPCWSTR );
static BOOL (WINAPI *pRtlDosPathNameToNtPathName_U)( LPCWSTR, PUNICODE_STRING, PWSTR*, CURDIR* );
+static NTSTATUS (WINAPI *pRtlWow64EnableFsRedirectionEx)( ULONG, ULONG * );
+
static NTSTATUS (WINAPI *pNtCreateMailslotFile)( PHANDLE, ULONG, POBJECT_ATTRIBUTES, PIO_STATUS_BLOCK,
ULONG, ULONG, ULONG, PLARGE_INTEGER );
static NTSTATUS (WINAPI *pNtDeleteFile)(POBJECT_ATTRIBUTES ObjectAttributes);
@@ -945,6 +947,7 @@ static void test_file_name_information(void)
{
WCHAR *file_name, *volume_prefix, *expected;
FILE_NAME_INFORMATION *info;
+ ULONG old_redir, tmp;
UINT file_name_size;
IO_STATUS_BLOCK io;
UINT info_size;
@@ -980,9 +983,11 @@ static void test_file_name_information(void)
info_size = sizeof(*info) + (file_name_size * sizeof(WCHAR));
info = HeapAlloc( GetProcessHeap(), 0, info_size );
+ if (pRtlWow64EnableFsRedirectionEx) pRtlWow64EnableFsRedirectionEx( TRUE, &old_redir );
h = CreateFileW( file_name, GENERIC_READ,
FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0 );
+ if (pRtlWow64EnableFsRedirectionEx) pRtlWow64EnableFsRedirectionEx( old_redir, &tmp );
ok(h != INVALID_HANDLE_VALUE, "Failed to open file.\n");
hr = pNtQueryInformationFile( h, &io, info, sizeof(*info) - 1, FileNameInformation );
@@ -1039,6 +1044,7 @@ START_TEST(file)
pRtlFreeUnicodeString = (void *)GetProcAddress(hntdll, "RtlFreeUnicodeString");
pRtlInitUnicodeString = (void *)GetProcAddress(hntdll, "RtlInitUnicodeString");
pRtlDosPathNameToNtPathName_U = (void *)GetProcAddress(hntdll, "RtlDosPathNameToNtPathName_U");
+ pRtlWow64EnableFsRedirectionEx = (void *)GetProcAddress(hntdll, "RtlWow64EnableFsRedirectionEx");
pNtCreateMailslotFile = (void *)GetProcAddress(hntdll, "NtCreateMailslotFile");
pNtDeleteFile = (void *)GetProcAddress(hntdll, "NtDeleteFile");
pNtReadFile = (void *)GetProcAddress(hntdll, "NtReadFile");
More information about the wine-cvs
mailing list