[PATCH 02/23] quartz: Accept tiny discontinuities without printing out a err
Maarten Lankhorst
m.b.lankhorst at gmail.com
Fri May 21 14:30:55 CDT 2010
---
dlls/quartz/videorenderer.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/quartz/videorenderer.c b/dlls/quartz/videorenderer.c
index 268373f..0af8cc6 100644
--- a/dlls/quartz/videorenderer.c
+++ b/dlls/quartz/videorenderer.c
@@ -367,9 +367,12 @@ static HRESULT VideoRenderer_Sample(LPVOID iface, IMediaSample * pSample)
if (FAILED(hr))
ERR("Cannot get sample time (%x)\n", hr);
- if (This->rtLastStop != tStart)
+ if (This->rtLastStop != tStart && This->state == State_Running)
{
- if (IMediaSample_IsDiscontinuity(pSample) == S_FALSE)
+ LONG64 delta;
+ delta = tStart - This->rtLastStop;
+ if ((delta < -100000 || delta > 100000) &&
+ IMediaSample_IsDiscontinuity(pSample) == S_FALSE)
ERR("Unexpected discontinuity: Last: %u.%03u, tStart: %u.%03u\n",
(DWORD)(This->rtLastStop / 10000000),
(DWORD)((This->rtLastStop / 10000)%1000),
--
1.7.0.4
--------------000509030106010002060705--
More information about the wine-patches
mailing list