[PATCH v2 1/5] strmbase: Forbid disconnecting the sink if the filter is not stopped.
Zebediah Figura
z.figura12 at gmail.com
Thu Nov 19 11:19:31 CST 2020
Addendum to 2a6037e263ff3fae8ca82d90b0b141bea1cd473d.
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/strmbase/pin.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/dlls/strmbase/pin.c b/dlls/strmbase/pin.c
index c08f04730e7..d7788cda493 100644
--- a/dlls/strmbase/pin.c
+++ b/dlls/strmbase/pin.c
@@ -887,6 +887,13 @@ static HRESULT WINAPI sink_Disconnect(IPin *iface)
EnterCriticalSection(&pin->pin.filter->csFilter);
+ if (pin->pin.filter->state != State_Stopped)
+ {
+ LeaveCriticalSection(&pin->pin.filter->csFilter);
+ WARN("Filter is not stopped; returning VFW_E_NOT_STOPPED.\n");
+ return VFW_E_NOT_STOPPED;
+ }
+
if (pin->pin.peer)
{
if (pin->pFuncsTable->sink_disconnect)
--
2.29.2
More information about the wine-devel
mailing list