diff --git a/dlls/imm32/tests/imm32.c b/dlls/imm32/tests/imm32.c index d948f54..a5d09ca 100644 --- a/dlls/imm32/tests/imm32.c +++ b/dlls/imm32/tests/imm32.c @@ -177,12 +177,16 @@ static int test_ImmNotifyIME(void) { static const char string[] = "wine"; char resstr[16] = ""; HIMC imc; + BOOL ret; imc = ImmGetContext(hwnd); msg_spy_flush_msgs(); - ok(ImmNotifyIME(imc, NI_COMPOSITIONSTR, CPS_CANCEL, 0), "Canceling an " - "empty composition string succeeds.\n"); + todo_wine + { + ok(!ImmNotifyIME(imc, NI_COMPOSITIONSTR, CPS_CANCEL, 0), "Canceling an " + "empty composition string should fail.\n"); + } ok(!msg_spy_find_msg(WM_IME_COMPOSITION), "Windows does not post " "WM_IME_COMPOSITION in response to NI_COMPOSITIONSTR / CPS_CANCEL, if " "the composition string being canceled is empty.\n"); @@ -191,16 +195,24 @@ static int test_ImmNotifyIME(void) { ImmSetCompositionString(imc, SCS_SETSTR, string, sizeof(string), NULL, 0); ImmNotifyIME(imc, NI_COMPOSITIONSTR, CPS_CANCEL, 0); - ok(msg_spy_find_msg(WM_IME_COMPOSITION) != NULL, "Windows does post " - "WM_IME_COMPOSITION in response to NI_COMPOSITIONSTR / CPS_CANCEL, if " - "the composition string being canceled is non empty.\n"); - ok(!ImmGetCompositionString(imc, GCS_COMPSTR, resstr, sizeof(resstr)), - "After being canceled the composition string is empty.\n"); + todo_wine + { + ok(!msg_spy_find_msg(WM_IME_COMPOSITION), "Windows does not post " + "WM_IME_COMPOSITION in response to NI_COMPOSITIONSTR / CPS_CANCEL, if " + "the composition string being canceled is non empty.\n"); + } + + /* behavior differs between win9x and NT */ + ret = ImmGetCompositionString(imc, GCS_COMPSTR, resstr, sizeof(resstr)); + ok(ret || !ret, "You'll never read this.\n"); msg_spy_flush_msgs(); - ok(ImmNotifyIME(imc, NI_COMPOSITIONSTR, CPS_CANCEL, 0), "Canceling an " - "empty composition string succeeds.\n"); + todo_wine + { + ok(!ImmNotifyIME(imc, NI_COMPOSITIONSTR, CPS_CANCEL, 0), "Canceling an " + "empty composition string should fail.\n"); + } ok(!msg_spy_find_msg(WM_IME_COMPOSITION), "Windows does not post " "WM_IME_COMPOSITION in response to NI_COMPOSITIONSTR / CPS_CANCEL, if " "the composition string being canceled is empty.\n"); -- 1.5.4.3