Zhiyi Zhang (@zhiyi) commented about dlls/user32/tests/sysparams.c:
+ { + /* Wait quite long for the message, screen setting changes can take some time */ + res = WaitForSingleObject( displaychange_sem, 10000 ); + ok( !res, "WaitForSingleObject returned %#lx\n", res ); + todo_wine + ok( last_bpp == bpp, "got WM_DISPLAYCHANGE bpp %u\n", last_bpp ); } - displaychange_ok = FALSE; - - if(change_ret != DISP_CHANGE_SUCCESSFUL) { - skip("Setting depth %d failed(ret = %ld)\n", test_bpps[i], change_ret); - ok(last_bpp == -1, "WM_DISPLAYCHANGE was sent with wParam %d despite mode change failure\n", last_bpp); - continue; + else + { + todo_wine This todo_wine here seems redundant because you're using win_skip already.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/844#note_9099