Signed-off-by: Francois Gouget fgouget@codeweavers.com --- dlls/evr/tests/evr.c | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-)
diff --git a/dlls/evr/tests/evr.c b/dlls/evr/tests/evr.c index ce791db21b1..06a8b770088 100644 --- a/dlls/evr/tests/evr.c +++ b/dlls/evr/tests/evr.c @@ -2050,10 +2050,12 @@ static void test_presenter_quality_control(void)
hr = IMFVideoPresenter_QueryInterface(presenter, &IID_IMFQualityAdviseLimits, (void **)&qa_limits); todo_wine - ok(hr == S_OK, "Unexpected hr %#x.\n", hr); + ok(hr == S_OK || broken(hr == E_NOINTERFACE) /* Vista */, + "Unexpected hr %#x.\n", hr);
hr = IMFVideoPresenter_QueryInterface(presenter, &IID_IMFQualityAdvise, (void **)&advise); - ok(hr == S_OK, "Unexpected hr %#x.\n", hr); + ok(hr == S_OK || broken(hr == E_NOINTERFACE) /* Vista */, + "Unexpected hr %#x.\n", hr);
if (qa_limits) { @@ -2074,25 +2076,26 @@ if (qa_limits) IMFQualityAdviseLimits_Release(qa_limits); }
-todo_wine { - mode = 1; - hr = IMFQualityAdvise_GetDropMode(advise, &mode); - ok(hr == S_OK, "Unexpected hr %#x.\n", hr); - ok(mode == MF_DROP_MODE_NONE, "Unexpected mode %d.\n", mode); + if (advise) + todo_wine { + mode = 1; + hr = IMFQualityAdvise_GetDropMode(advise, &mode); + ok(hr == S_OK, "Unexpected hr %#x.\n", hr); + ok(mode == MF_DROP_MODE_NONE, "Unexpected mode %d.\n", mode);
- level = 1; - hr = IMFQualityAdvise_GetQualityLevel(advise, &level); - ok(hr == S_OK, "Unexpected hr %#x.\n", hr); - ok(level == MF_QUALITY_NORMAL, "Unexpected mode %d.\n", level); + level = 1; + hr = IMFQualityAdvise_GetQualityLevel(advise, &level); + ok(hr == S_OK, "Unexpected hr %#x.\n", hr); + ok(level == MF_QUALITY_NORMAL, "Unexpected mode %d.\n", level);
- hr = IMFQualityAdvise_SetDropMode(advise, MF_DROP_MODE_1); - ok(hr == MF_E_NO_MORE_DROP_MODES, "Unexpected hr %#x.\n", hr); + hr = IMFQualityAdvise_SetDropMode(advise, MF_DROP_MODE_1); + ok(hr == MF_E_NO_MORE_DROP_MODES, "Unexpected hr %#x.\n", hr);
- hr = IMFQualityAdvise_SetQualityLevel(advise, MF_QUALITY_NORMAL_MINUS_1); - ok(hr == MF_E_NO_MORE_QUALITY_LEVELS, "Unexpected hr %#x.\n", hr); -} + hr = IMFQualityAdvise_SetQualityLevel(advise, MF_QUALITY_NORMAL_MINUS_1); + ok(hr == MF_E_NO_MORE_QUALITY_LEVELS, "Unexpected hr %#x.\n", hr);
- IMFQualityAdvise_Release(advise); + IMFQualityAdvise_Release(advise); + }
IMFVideoPresenter_Release(presenter); }