[PATCH 3/4] ntdll/tests: Reduce buffer size in test_flags_NtQueryDirectoryFile.

Matteo Bruni mbruni at codeweavers.com
Thu Aug 27 14:08:40 CDT 2015


To force the implementation to split the directory listing over multiple
NtQueryDirectoryFile invocations.
---
 dlls/ntdll/tests/directory.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/dlls/ntdll/tests/directory.c b/dlls/ntdll/tests/directory.c
index 730b0f1..5850858 100644
--- a/dlls/ntdll/tests/directory.c
+++ b/dlls/ntdll/tests/directory.c
@@ -169,7 +169,7 @@ static void test_flags_NtQueryDirectoryFile(OBJECT_ATTRIBUTES *attr, const char
     IO_STATUS_BLOCK io;
     UINT data_pos, data_size;
     UINT data_len;    /* length of dir data */
-    BYTE data[8192];  /* directory data */
+    BYTE data[516];   /* directory data */
     FILE_BOTH_DIRECTORY_INFORMATION *dir_info;
     DWORD status;
     int numfiles;
@@ -188,10 +188,13 @@ static void test_flags_NtQueryDirectoryFile(OBJECT_ATTRIBUTES *attr, const char
        return;
     }
 
+    data[512] = data[513] = data[514] = data[515] = 0xaa;
     pNtQueryDirectoryFile( dirh, NULL, NULL, NULL, &io, data, data_size,
                        FileBothDirectoryInformation, single_entry, mask, restart_flag );
     ok (U(io).Status == STATUS_SUCCESS, "failed to query directory; status %x\n", U(io).Status);
     data_len = io.Information;
+    ok(data[512] == 0xaa && data[513] == 0xaa && data[514] == 0xaa && data[515] == 0xaa,
+       "partial data unexpectedly written.\n");
     ok (data_len >= sizeof(FILE_BOTH_DIRECTORY_INFORMATION), "not enough data in directory\n");
 
     data_pos = 0;
-- 
2.4.6




More information about the wine-patches mailing list