Module: wine Branch: master Commit: 3f9abe2c28bdfab7866b818d397681077430393c URL: http://source.winehq.org/git/wine.git/?a=commit;h=3f9abe2c28bdfab7866b818d39...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Mon Dec 6 14:16:44 2010 +0100
strmbase: Use advise functions in WaitFor.
---
dlls/strmbase/qualitycontrol.c | 13 +++---------- 1 files changed, 3 insertions(+), 10 deletions(-)
diff --git a/dlls/strmbase/qualitycontrol.c b/dlls/strmbase/qualitycontrol.c index ad6d942..5676a95 100644 --- a/dlls/strmbase/qualitycontrol.c +++ b/dlls/strmbase/qualitycontrol.c @@ -148,18 +148,11 @@ HRESULT QualityControlRender_WaitFor(QualityControlImpl *This, IMediaSample *sam now -= This->clockstart;
jitter = now - start; -#if 0 - /* AdviseTime is bugged, so don't use it at all */ - if (jitter < -200000) { + if (jitter <= -10000) { DWORD_PTR cookie; - IReferenceClock_AdviseTime(This->clock, clockstart, start, ev, &cookie); + IReferenceClock_AdviseTime(This->clock, This->clockstart, start, (HEVENT)ev, &cookie); WaitForSingleObject(ev, INFINITE); - IReferenceClock_Unadvise(This->clock, cookie); - } else -#endif - if (jitter < -10000) { - TRACE("Sleeping for %i ms\n", (int)-jitter/10000); - WaitForSingleObject(ev, -jitter/10000); + IReferenceClock_Unadvise(This->clock, cookie); } } else