Rémi Bernon (@rbernon) commented about dlls/imm32/tests/imm32.c:
+ + alen = ImmGetCompositionStringA(imc, GCS_COMPSTR, cstring, 20); + todo_wine ok(alen == 2 || broken(ends_comp_in_set && !alen), "got %ld.\n", alen); + wlen = ImmGetCompositionStringW(imc, GCS_COMPSTR, wstring, 20); + todo_wine ok(wlen == 4 || broken(ends_comp_in_set && !wlen), "got %ld.\n", wlen); + + msg_spy_flush_msgs(); + ret = ImmSetCompositionStringW(imc, SCS_SETSTR, L"", 2, NULL, 0); + ok(ret, "got error %lu.\n", GetLastError()); + msg = msg_spy_find_msg(WM_IME_ENDCOMPOSITION); + todo_wine ok(!!msg || broken(ends_comp_in_set && !msg), "did not find WM_IME_ENDCOMPOSITION.\n"); + + alen = ImmGetCompositionStringA(imc, GCS_COMPSTR, cstring, 20); + todo_wine ok(!alen, "got %ld.\n", alen); + wlen = ImmGetCompositionStringW(imc, GCS_COMPSTR, wstring, 20); + todo_wine ok(!wlen, "got %ld.\n", alen); This is failing with the Korean MS IME (https://testbot.winehq.org/JobDetails.pl?Key=163520), probably because on Windows several languages use a different IME module (ko_KR, ja_JP, zh_CN among others) and their implementation differs a lot.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/11193#note_143805