[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    [PATCH 4/6] mf: Return presentation clock properties.
From:       Nikolay Sivov <nsivov () codeweavers ! com>
Date:       2019-05-31 10:11:31
Message-ID: 20190531101133.29667-4-nsivov () codeweavers ! com
[Download RAW message or body]

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
---
 dlls/mf/session.c  | 7 +------
 dlls/mf/tests/mf.c | 9 ++++++++-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/dlls/mf/session.c b/dlls/mf/session.c
index 9c2826f8e5..14aac77470 100644
--- a/dlls/mf/session.c
+++ b/dlls/mf/session.c
@@ -894,15 +894,10 @@ static HRESULT WINAPI \
present_clock_GetProperties(IMFPresentationClock *iface, M  TRACE("%p, %p.\n", iface, \
props);  
     EnterCriticalSection(&clock->cs);
-
     if (clock->time_source)
-    {
-        FIXME("%p, %p.\n", iface, props);
-        hr = E_NOTIMPL;
-    }
+        hr = IMFPresentationTimeSource_GetProperties(clock->time_source, props);
     else
         hr = MF_E_CLOCK_NO_TIME_SOURCE;
-
     LeaveCriticalSection(&clock->cs);
 
     return hr;
diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c
index e07c82486b..b710d0a13d 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -1427,9 +1427,9 @@ static void test_presentation_clock(void)
     };
     IMFClockStateSink test_sink = { &test_clock_sink_vtbl };
     IMFPresentationTimeSource *time_source;
+    MFCLOCK_PROPERTIES props, props2;
     IMFRateControl *rate_control;
     IMFPresentationClock *clock;
-    MFCLOCK_PROPERTIES props;
     IMFShutdown *shutdown;
     LONGLONG clock_time;
     MFCLOCK_STATE state;
@@ -1498,11 +1498,18 @@ todo_wine
     hr = IMFPresentationClock_SetTimeSource(clock, time_source);
     ok(hr == S_OK, "Failed to set time source, hr %#x.\n", hr);
 
+    hr = IMFPresentationTimeSource_GetProperties(time_source, &props2);
+    ok(hr == S_OK, "Failed to get time source properties, hr %#x.\n", hr);
+
     hr = IMFPresentationClock_GetClockCharacteristics(clock, &value);
     ok(hr == S_OK, "Failed to get clock flags, hr %#x.\n", hr);
     ok(value == (MFCLOCK_CHARACTERISTICS_FLAG_FREQUENCY_10MHZ | \
MFCLOCK_CHARACTERISTICS_FLAG_IS_SYSTEM_CLOCK),  "Unexpected clock flags %#x.\n", \
value);  
+    hr = IMFPresentationClock_GetProperties(clock, &props);
+    ok(hr == S_OK, "Failed to get clock properties, hr %#x.\n", hr);
+    ok(!memcmp(&props, &props2, sizeof(props)), "Unexpected clock properties.\n");
+
     /* State changes. */
     for (i = 0; i < ARRAY_SIZE(clock_state_change); ++i)
     {
-- 
2.20.1


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic