From: Serge Gautherie Subject: [PATCH] kernel32/tests: Test QueryFullProcessImageNameW() flags. Message-Id: <20190708222500.1020-1-winehq-git_serge_180711@gautherie.fr> Date: Tue, 9 Jul 2019 00:25:00 +0200 Signed-off-by: Serge Gautherie --- dlls/kernel32/tests/process.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c index c593ebe..dd6224d 100644 --- a/dlls/kernel32/tests/process.c +++ b/dlls/kernel32/tests/process.c @@ -1978,6 +1978,7 @@ static void test_QueryFullProcessImageNameW(void) WCHAR deviceW[] = {'\\','D', 'e','v','i','c','e',0}; WCHAR buf[1024]; DWORD size, len; + DWORD flags; if (!pQueryFullProcessImageNameW) { @@ -2031,6 +2032,17 @@ static void test_QueryFullProcessImageNameW(void) expect_eq_d(ERROR_INSUFFICIENT_BUFFER, GetLastError()); expect_eq_ws_i(module_name, buf); /* buffer not changed */ + /* Invalid flags - a few arbitrary values only */ + for (flags = 2; flags != 0; flags <<= 1) + { + size = ARRAY_SIZE(buf); + SetLastError(0xdeadbeef); + *(DWORD*)buf = 0x13579acf; + expect_eq_d(FALSE, pQueryFullProcessImageNameW(hSelf, flags, buf, &size)); + expect_eq_d(ARRAY_SIZE(buf), size); /* size not changed */ + expect_eq_d(ERROR_INVALID_PARAMETER, GetLastError()); + expect_eq_d(0x13579acf, *(DWORD*)buf); /* buffer not changed */ + } /* native path */ size = ARRAY_SIZE(buf); -- 2.10.0.windows.1