From a307c6fdc294d5e7c8775e0cbd193443b1537c1d Mon Sep 17 00:00:00 2001 From: Aric Stewart Date: Wed, 24 Jun 2009 17:30:18 +0900 Subject: [PATCH] msctf/tests: Verify to make sure OnPopContext happens before context is removed from stack. --- dlls/msctf/tests/inputprocessor.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dlls/msctf/tests/inputprocessor.c b/dlls/msctf/tests/inputprocessor.c index b9f2469aa85..4d94d3cc72d 100644 --- a/dlls/msctf/tests/inputprocessor.c +++ b/dlls/msctf/tests/inputprocessor.c @@ -461,6 +461,20 @@ ITfContext *pic) static HRESULT WINAPI ThreadMgrEventSink_OnPopContext(ITfThreadMgrEventSink *iface, ITfContext *pic) { + HRESULT hr; + ITfDocumentMgr *docmgr; + ITfContext *test; + + hr = ITfContext_GetDocumentMgr(pic,&docmgr); + ok(SUCCEEDED(hr),"GetDocumenMgr failed\n"); + ITfDocumentMgr_Release(docmgr); + test = (ITfContext*)0xdeadbeef; + hr = ITfDocumentMgr_GetTop(docmgr,&test); + ok(SUCCEEDED(hr),"GetTop failed\n"); + ok(test == pic, "Wrong context is on top\n"); + if (test) + ITfContext_Release(test); + ok(test_OnPopContext == SINK_EXPECTED, "Unexpected OnPopContext sink\n"); test_OnPopContext = SINK_FIRED; return S_OK;