Signed-off-by: Brendan Shanks bshanks@codeweavers.com --- dlls/user32/sysparams.c | 12 +++++++++++- dlls/user32/tests/monitor.c | 3 --- 2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/dlls/user32/sysparams.c b/dlls/user32/sysparams.c index a3071912f8..82d7877f3e 100644 --- a/dlls/user32/sysparams.c +++ b/dlls/user32/sysparams.c @@ -4503,7 +4503,17 @@ LONG WINAPI QueryDisplayConfig(UINT32 flags, UINT32 *numpathelements, DISPLAYCON DISPLAYCONFIG_TOPOLOGY_ID *topologyid) { FIXME("(%08x %p %p %p %p %p)\n", flags, numpathelements, pathinfo, numinfoelements, modeinfo, topologyid); - return ERROR_CALL_NOT_IMPLEMENTED; + + if (!numpathelements || !numinfoelements) + return ERROR_INVALID_PARAMETER; + + if (!*numpathelements || !*numinfoelements) + return ERROR_INVALID_PARAMETER; + + if (!flags) + return ERROR_INVALID_PARAMETER; + + return ERROR_NOT_SUPPORTED; }
/*********************************************************************** diff --git a/dlls/user32/tests/monitor.c b/dlls/user32/tests/monitor.c index a986879293..2dd642f58f 100644 --- a/dlls/user32/tests/monitor.c +++ b/dlls/user32/tests/monitor.c @@ -1154,8 +1154,6 @@ static void test_query_display_config(void) DISPLAYCONFIG_MODE_INFO mi[20]; LONG ret;
- todo_wine - { ret = pQueryDisplayConfig(QDC_ALL_PATHS, NULL, NULL, NULL, NULL, NULL); ok(ret == ERROR_INVALID_PARAMETER, "got %d\n", ret);
@@ -1203,7 +1201,6 @@ static void test_query_display_config(void) ok(ret == ERROR_INSUFFICIENT_BUFFER || ret == ERROR_NOT_SUPPORTED, "got %d\n", ret); ok (paths == 1, "got %u\n", paths); ok (modes == 1, "got %u\n", modes); - } }
static void test_display_config_get_device_info(void)