diff --git a/dlls/quartz/control.c b/dlls/quartz/control.c index af6de28aae8..f6851bb9321 100644 --- a/dlls/quartz/control.c +++ b/dlls/quartz/control.c @@ -85,7 +85,7 @@ static HRESULT ForwardCmdSeek( PCRITICAL_SECTION crit_sect, IBaseFilter* from, S } IPin_Release( pin ); } - } while (hr == S_OK); + } if (foundend && allnotimpl) hr = E_NOTIMPL; else diff --git a/dlls/quartz/pin.c b/dlls/quartz/pin.c index 7d54a5158bf..96c4b827001 100644 --- a/dlls/quartz/pin.c +++ b/dlls/quartz/pin.c @@ -120,7 +120,8 @@ static HRESULT SendFurther( IPin *from, SendPinFunc fnMiddle, LPVOID arg, SendPi } IPin_Release( pin ); } - } while (hr == S_OK); + } + if (!foundend) hr = hr_return; else if (fnEnd) {