Signed-off-by: Zhiyi Zhang zzhang@codeweavers.com --- dlls/gdi32/tests/driver.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+)
diff --git a/dlls/gdi32/tests/driver.c b/dlls/gdi32/tests/driver.c index becb25deea..e46ec7bb80 100644 --- a/dlls/gdi32/tests/driver.c +++ b/dlls/gdi32/tests/driver.c @@ -592,6 +592,29 @@ static void test_D3DKMTCheckVidPnExclusiveOwnership(void) ok(status == STATUS_SUCCESS, "Got unexpected return code %#x.\n", status); }
+static void test_D3DKMTSetVidPnSourceOwner(void) +{ + D3DKMT_SETVIDPNSOURCEOWNER set_owner_desc = {0}; + NTSTATUS status; + + if (!pD3DKMTSetVidPnSourceOwner || pD3DKMTSetVidPnSourceOwner(&set_owner_desc) == STATUS_PROCEDURE_NOT_FOUND) + { + skip("D3DKMTSetVidPnSourceOwner() is unavailable.\n"); + return; + } + + /* Invalid parameters */ + /* Crash on windows */ + if (0) + { + status = pD3DKMTSetVidPnSourceOwner(NULL); + ok(status == STATUS_INVALID_PARAMETER, "Got unexpected return code %#x.\n", status); + } + + status = pD3DKMTSetVidPnSourceOwner(&set_owner_desc); + ok(status == STATUS_INVALID_PARAMETER, "Got unexpected return code %#x.\n", status); +} + START_TEST(driver) { HMODULE gdi32 = LoadLibraryA("gdi32.dll"); @@ -610,6 +633,7 @@ START_TEST(driver) test_D3DKMTDestroyDevice(); test_D3DKMTOpenAdapterFromGdiDisplayName(); test_D3DKMTOpenAdapterFromHdc(); + test_D3DKMTSetVidPnSourceOwner();
FreeLibrary(gdi32); }