Commit 05a8d45e authored by Zebediah Figura's avatar Zebediah Figura Committed by Alexandre Julliard

quartz/filtergraph: Iterate over all filters in state change methods.

parent e0d5e16d
...@@ -1227,21 +1227,21 @@ static void test_filter_state(IMediaControl *control) ...@@ -1227,21 +1227,21 @@ static void test_filter_state(IMediaControl *control)
ok(state == State_Stopped, "Got state %u.\n", state); ok(state == State_Stopped, "Got state %u.\n", state);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(state == State_Running, "Got state %u.\n", state); ok(state == State_Running, "Got state %u.\n", state);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1250,7 +1250,7 @@ static void test_filter_state(IMediaControl *control) ...@@ -1250,7 +1250,7 @@ static void test_filter_state(IMediaControl *control)
ok(!got_Flush, "Unexpected IMediaObject::Flush().\n"); ok(!got_Flush, "Unexpected IMediaObject::Flush().\n");
hr = IMediaControl_Stop(control); hr = IMediaControl_Stop(control);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
todo_wine ok(got_Flush, "Expected IMediaObject::Flush().\n"); ok(got_Flush, "Expected IMediaObject::Flush().\n");
got_Flush = 0; got_Flush = 0;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
...@@ -1258,7 +1258,7 @@ static void test_filter_state(IMediaControl *control) ...@@ -1258,7 +1258,7 @@ static void test_filter_state(IMediaControl *control)
ok(state == State_Stopped, "Got state %u.\n", state); ok(state == State_Stopped, "Got state %u.\n", state);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1267,7 +1267,7 @@ static void test_filter_state(IMediaControl *control) ...@@ -1267,7 +1267,7 @@ static void test_filter_state(IMediaControl *control)
ok(!got_Flush, "Unexpected IMediaObject::Flush().\n"); ok(!got_Flush, "Unexpected IMediaObject::Flush().\n");
hr = IMediaControl_Stop(control); hr = IMediaControl_Stop(control);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
todo_wine ok(got_Flush, "Expected IMediaObject::Flush().\n"); ok(got_Flush, "Expected IMediaObject::Flush().\n");
got_Flush = 0; got_Flush = 0;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
......
...@@ -1025,21 +1025,21 @@ static void test_filter_state(IMediaControl *control) ...@@ -1025,21 +1025,21 @@ static void test_filter_state(IMediaControl *control)
ok(state == State_Stopped, "Got state %u.\n", state); ok(state == State_Stopped, "Got state %u.\n", state);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(state == State_Running, "Got state %u.\n", state); ok(state == State_Running, "Got state %u.\n", state);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1053,7 +1053,7 @@ static void test_filter_state(IMediaControl *control) ...@@ -1053,7 +1053,7 @@ static void test_filter_state(IMediaControl *control)
ok(state == State_Stopped, "Got state %u.\n", state); ok(state == State_Stopped, "Got state %u.\n", state);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
......
...@@ -3104,8 +3104,8 @@ static void check_filter_state_(unsigned int line, IFilterGraph2 *graph, FILTER_ ...@@ -3104,8 +3104,8 @@ static void check_filter_state_(unsigned int line, IFilterGraph2 *graph, FILTER_
static void test_filter_state(void) static void test_filter_state(void)
{ {
struct testfilter source, sink, dummy;
struct testpin source_pin, sink_pin; struct testpin source_pin, sink_pin;
struct testfilter source, sink;
IFilterGraph2 *graph = create_graph(); IFilterGraph2 *graph = create_graph();
REFERENCE_TIME start_time; REFERENCE_TIME start_time;
...@@ -3120,6 +3120,7 @@ static void test_filter_state(void) ...@@ -3120,6 +3120,7 @@ static void test_filter_state(void)
testsink_init(&sink_pin); testsink_init(&sink_pin);
testfilter_init(&source, &source_pin, 1); testfilter_init(&source, &source_pin, 1);
testfilter_init(&sink, &sink_pin, 1); testfilter_init(&sink, &sink_pin, 1);
testfilter_init(&dummy, NULL, 0);
IFilterGraph2_QueryInterface(graph, &IID_IMediaFilter, (void **)&filter); IFilterGraph2_QueryInterface(graph, &IID_IMediaFilter, (void **)&filter);
IFilterGraph2_QueryInterface(graph, &IID_IMediaControl, (void **)&control); IFilterGraph2_QueryInterface(graph, &IID_IMediaControl, (void **)&control);
...@@ -3129,12 +3130,12 @@ static void test_filter_state(void) ...@@ -3129,12 +3130,12 @@ static void test_filter_state(void)
IFilterGraph2_AddFilter(graph, &source.IBaseFilter_iface, NULL); IFilterGraph2_AddFilter(graph, &source.IBaseFilter_iface, NULL);
IFilterGraph2_AddFilter(graph, &sink.IBaseFilter_iface, NULL); IFilterGraph2_AddFilter(graph, &sink.IBaseFilter_iface, NULL);
IFilterGraph2_AddFilter(graph, &dummy.IBaseFilter_iface, NULL);
IFilterGraph2_ConnectDirect(graph, &source_pin.IPin_iface, &sink_pin.IPin_iface, NULL); IFilterGraph2_ConnectDirect(graph, &source_pin.IPin_iface, &sink_pin.IPin_iface, NULL);
check_filter_state(graph, State_Stopped); check_filter_state(graph, State_Stopped);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
...@@ -3149,7 +3150,6 @@ todo_wine ...@@ -3149,7 +3150,6 @@ todo_wine
hr = IReferenceClock_GetTime(clock, &start_time); hr = IReferenceClock_GetTime(clock, &start_time);
ok(SUCCEEDED(hr), "Got hr %#x.\n", hr); ok(SUCCEEDED(hr), "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000, ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000,
...@@ -3159,7 +3159,6 @@ todo_wine ...@@ -3159,7 +3159,6 @@ todo_wine
wine_dbgstr_longlong(source.start_time), wine_dbgstr_longlong(sink.start_time)); wine_dbgstr_longlong(source.start_time), wine_dbgstr_longlong(sink.start_time));
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
...@@ -3168,7 +3167,6 @@ todo_wine ...@@ -3168,7 +3167,6 @@ todo_wine
check_filter_state(graph, State_Stopped); check_filter_state(graph, State_Stopped);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
...@@ -3192,7 +3190,6 @@ todo_wine ...@@ -3192,7 +3190,6 @@ todo_wine
IFilterGraph2_ConnectDirect(graph, &source_pin.IPin_iface, &sink_pin.IPin_iface, NULL); IFilterGraph2_ConnectDirect(graph, &source_pin.IPin_iface, &sink_pin.IPin_iface, NULL);
hr = IMediaFilter_Pause(filter); hr = IMediaFilter_Pause(filter);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
...@@ -3203,25 +3200,23 @@ todo_wine ...@@ -3203,25 +3200,23 @@ todo_wine
ok(sink.clock == clock, "Expected %p, got %p.\n", clock, sink.clock); ok(sink.clock == clock, "Expected %p, got %p.\n", clock, sink.clock);
hr = IMediaFilter_Run(filter, 0xdeadbeef); hr = IMediaFilter_Run(filter, 0xdeadbeef);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time == 0xdeadbeef, "Got time %s.\n", wine_dbgstr_longlong(source.start_time)); ok(source.start_time == 0xdeadbeef, "Got time %s.\n", wine_dbgstr_longlong(source.start_time));
ok(sink.start_time == 0xdeadbeef, "Got time %s.\n", wine_dbgstr_longlong(sink.start_time)); ok(sink.start_time == 0xdeadbeef, "Got time %s.\n", wine_dbgstr_longlong(sink.start_time));
hr = IMediaFilter_Pause(filter); hr = IMediaFilter_Pause(filter);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
hr = IMediaFilter_Run(filter, 0xdeadf00d); hr = IMediaFilter_Run(filter, 0xdeadf00d);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time == 0xdeadf00d, "Got time %s.\n", wine_dbgstr_longlong(source.start_time)); ok(source.start_time == 0xdeadf00d, "Got time %s.\n", wine_dbgstr_longlong(source.start_time));
ok(sink.start_time == 0xdeadf00d, "Got time %s.\n", wine_dbgstr_longlong(sink.start_time)); ok(sink.start_time == 0xdeadf00d, "Got time %s.\n", wine_dbgstr_longlong(sink.start_time));
hr = IMediaFilter_Pause(filter); hr = IMediaFilter_Pause(filter);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
hr = IMediaFilter_Stop(filter); hr = IMediaFilter_Stop(filter);
...@@ -3231,7 +3226,6 @@ todo_wine ...@@ -3231,7 +3226,6 @@ todo_wine
hr = IReferenceClock_GetTime(clock, &start_time); hr = IReferenceClock_GetTime(clock, &start_time);
ok(SUCCEEDED(hr), "Got hr %#x.\n", hr); ok(SUCCEEDED(hr), "Got hr %#x.\n", hr);
hr = IMediaFilter_Run(filter, 0); hr = IMediaFilter_Run(filter, 0);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000, ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000,
...@@ -3242,11 +3236,11 @@ todo_wine ...@@ -3242,11 +3236,11 @@ todo_wine
Sleep(600); Sleep(600);
hr = IMediaFilter_Pause(filter); hr = IMediaFilter_Pause(filter);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
hr = IMediaFilter_Run(filter, 0); hr = IMediaFilter_Run(filter, 0);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000, ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000,
"Expected time near %s, got %s.\n", "Expected time near %s, got %s.\n",
...@@ -3255,13 +3249,13 @@ todo_wine ...@@ -3255,13 +3249,13 @@ todo_wine
wine_dbgstr_longlong(source.start_time), wine_dbgstr_longlong(sink.start_time)); wine_dbgstr_longlong(source.start_time), wine_dbgstr_longlong(sink.start_time));
hr = IMediaFilter_Pause(filter); hr = IMediaFilter_Pause(filter);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Paused); check_filter_state(graph, State_Paused);
Sleep(600); Sleep(600);
start_time += 550 * 10000; start_time += 550 * 10000;
hr = IMediaFilter_Run(filter, 0); hr = IMediaFilter_Run(filter, 0);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000, ok(source.start_time >= start_time && source.start_time < start_time + 500 * 10000,
"Expected time near %s, got %s.\n", "Expected time near %s, got %s.\n",
...@@ -3279,7 +3273,6 @@ todo_wine ...@@ -3279,7 +3273,6 @@ todo_wine
IMediaFilter_SetSyncSource(filter, NULL); IMediaFilter_SetSyncSource(filter, NULL);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
todo_wine todo_wine
...@@ -3298,24 +3291,24 @@ todo_wine ...@@ -3298,24 +3291,24 @@ todo_wine
sink.state_hr = VFW_S_STATE_INTERMEDIATE; sink.state_hr = VFW_S_STATE_INTERMEDIATE;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
sink.state_hr = VFW_S_CANT_CUE; sink.state_hr = VFW_S_CANT_CUE;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr); ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
sink.state_hr = VFW_S_STATE_INTERMEDIATE; sink.state_hr = VFW_S_STATE_INTERMEDIATE;
source.state_hr = VFW_S_CANT_CUE; source.state_hr = VFW_S_CANT_CUE;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr); ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
sink.state_hr = VFW_S_CANT_CUE; sink.state_hr = VFW_S_CANT_CUE;
source.state_hr = VFW_S_STATE_INTERMEDIATE; source.state_hr = VFW_S_STATE_INTERMEDIATE;
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr); ok(hr == VFW_S_CANT_CUE, "Got hr %#x.\n", hr);
ok(state == State_Paused, "Got state %u.\n", state); ok(state == State_Paused, "Got state %u.\n", state);
sink.state_hr = source.state_hr = S_OK; sink.state_hr = source.state_hr = S_OK;
...@@ -3323,7 +3316,6 @@ todo_wine ...@@ -3323,7 +3316,6 @@ todo_wine
/* Destroying the graph while it's running stops all filters. */ /* Destroying the graph while it's running stops all filters. */
hr = IMediaFilter_Run(filter, 0); hr = IMediaFilter_Run(filter, 0);
todo_wine
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
check_filter_state(graph, State_Running); check_filter_state(graph, State_Running);
todo_wine todo_wine
...@@ -3993,7 +3985,7 @@ static void test_graph_seeking(void) ...@@ -3993,7 +3985,7 @@ static void test_graph_seeking(void)
* SetPositions() and then adds the clock offset to the stream start. */ * SetPositions() and then adds the clock offset to the stream start. */
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
/* Note that if the graph is running, it is paused while seeking. */ /* Note that if the graph is running, it is paused while seeking. */
current = 0; current = 0;
...@@ -4035,11 +4027,11 @@ static void test_graph_seeking(void) ...@@ -4035,11 +4027,11 @@ static void test_graph_seeking(void)
ok(stop == 8000 * 10000, "Got time %s.\n", wine_dbgstr_longlong(stop)); ok(stop == 8000 * 10000, "Got time %s.\n", wine_dbgstr_longlong(stop));
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
Sleep(100); Sleep(100);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaSeeking_GetCurrentPosition(seeking, &time); hr = IMediaSeeking_GetCurrentPosition(seeking, &time);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -4062,7 +4054,7 @@ static void test_graph_seeking(void) ...@@ -4062,7 +4054,7 @@ static void test_graph_seeking(void)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
Sleep(100); Sleep(100);
hr = IMediaSeeking_GetCurrentPosition(seeking, &time); hr = IMediaSeeking_GetCurrentPosition(seeking, &time);
......
...@@ -679,7 +679,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -679,7 +679,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -712,7 +712,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -712,7 +712,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -722,7 +722,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -722,7 +722,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -735,7 +735,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -735,7 +735,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -748,7 +748,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -748,7 +748,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -757,7 +757,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -757,7 +757,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -772,10 +772,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -772,10 +772,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -837,7 +837,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -837,7 +837,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = join_thread(thread); hr = join_thread(thread);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -872,7 +872,7 @@ static void test_sample_time(IPin *pin, IMemInputPin *input, IFilterGraph2 *grap ...@@ -872,7 +872,7 @@ static void test_sample_time(IPin *pin, IMemInputPin *input, IFilterGraph2 *grap
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame_time(input, 1, 0x11); /* dark blue */ thread = send_frame_time(input, 1, 0x11); /* dark blue */
...@@ -882,7 +882,7 @@ static void test_sample_time(IPin *pin, IMemInputPin *input, IFilterGraph2 *grap ...@@ -882,7 +882,7 @@ static void test_sample_time(IPin *pin, IMemInputPin *input, IFilterGraph2 *grap
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ok(WaitForSingleObject(thread, 500) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 500) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
...@@ -984,7 +984,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -984,7 +984,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
todo_wine ok(hr == E_UNEXPECTED, "Got hr %#x.\n", hr); todo_wine ok(hr == E_UNEXPECTED, "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
ret = check_ec_complete(eventsrc, 0); ret = check_ec_complete(eventsrc, 0);
todo_wine ok(ret == 1, "Expected EC_COMPLETE.\n"); todo_wine ok(ret == 1, "Expected EC_COMPLETE.\n");
...@@ -997,7 +997,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -997,7 +997,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
* done rendering. */ * done rendering. */
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = join_thread(send_frame(input)); hr = join_thread(send_frame(input));
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 1000, &state); hr = IMediaControl_GetState(control, 1000, &state);
...@@ -1020,7 +1020,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1020,7 +1020,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
/* Test sending EOS while flushing. */ /* Test sending EOS while flushing. */
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = join_thread(send_frame(input)); hr = join_thread(send_frame(input));
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1039,7 +1039,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1039,7 +1039,7 @@ static void test_eos(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
/* Test sending EOS and then flushing or stopping. */ /* Test sending EOS and then flushing or stopping. */
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = join_thread(send_frame(input)); hr = join_thread(send_frame(input));
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 1000, &state); hr = IMediaControl_GetState(control, 1000, &state);
...@@ -1133,7 +1133,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input, ...@@ -1133,7 +1133,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input,
} }
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
join_thread(thread); join_thread(thread);
hr = IBasicVideo_GetCurrentImage(video, &size, buffer); hr = IBasicVideo_GetCurrentImage(video, &size, buffer);
......
...@@ -1031,7 +1031,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1031,7 +1031,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -1064,7 +1064,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1064,7 +1064,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -1074,7 +1074,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1074,7 +1074,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1087,7 +1087,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1087,7 +1087,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1100,7 +1100,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1100,7 +1100,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1109,7 +1109,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1109,7 +1109,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1127,10 +1127,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1127,10 +1127,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1199,7 +1199,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1199,7 +1199,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = join_thread(thread); hr = join_thread(thread);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1304,7 +1304,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input, ...@@ -1304,7 +1304,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input,
} }
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
join_thread(thread); join_thread(thread);
size = sizeof(buffer); size = sizeof(buffer);
......
...@@ -1035,7 +1035,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1035,7 +1035,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -1068,7 +1068,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1068,7 +1068,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
thread = send_frame(input); thread = send_frame(input);
...@@ -1078,7 +1078,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1078,7 +1078,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1091,7 +1091,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1091,7 +1091,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1104,7 +1104,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1104,7 +1104,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1113,7 +1113,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1113,7 +1113,7 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = IMediaControl_Pause(control); hr = IMediaControl_Pause(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1131,10 +1131,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1131,10 +1131,10 @@ static void test_filter_state(IMemInputPin *input, IFilterGraph2 *graph)
ok(hr == S_FALSE, "Got hr %#x.\n", hr); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
ok(hr == S_FALSE, "Got hr %#x.\n", hr); todo_wine ok(hr == S_FALSE, "Got hr %#x.\n", hr);
hr = IMediaControl_GetState(control, 0, &state); hr = IMediaControl_GetState(control, 0, &state);
todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr); todo_wine ok(hr == VFW_S_STATE_INTERMEDIATE, "Got hr %#x.\n", hr);
...@@ -1203,7 +1203,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph) ...@@ -1203,7 +1203,7 @@ static void test_flushing(IPin *pin, IMemInputPin *input, IFilterGraph2 *graph)
ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n"); ok(WaitForSingleObject(thread, 100) == WAIT_TIMEOUT, "Thread should block in Receive().\n");
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
hr = join_thread(thread); hr = join_thread(thread);
ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
...@@ -1305,7 +1305,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input, ...@@ -1305,7 +1305,7 @@ static void test_current_image(IBaseFilter *filter, IMemInputPin *input,
} }
hr = IMediaControl_Run(control); hr = IMediaControl_Run(control);
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr); ok(hr == S_OK, "Got hr %#x.\n", hr);
join_thread(thread); join_thread(thread);
size = sizeof(buffer); size = sizeof(buffer);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment