strmbase: Check if the pin is already connected in source_Connect().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2020-02-05 19:50:07 -06:00 committed by Alexandre Julliard
parent 09b0d9d456
commit d1897cf96b
1 changed files with 7 additions and 0 deletions

View File

@ -463,6 +463,13 @@ static HRESULT WINAPI source_Connect(IPin *iface, IPin *peer, const AM_MEDIA_TYP
EnterCriticalSection(&pin->pin.filter->csFilter);
if (pin->pin.peer)
{
LeaveCriticalSection(&pin->pin.filter->csFilter);
WARN("Pin is already connected, returning VFW_E_ALREADY_CONNECTED.\n");
return VFW_E_ALREADY_CONNECTED;
}
if (pin->pin.filter->state != State_Stopped)
{
LeaveCriticalSection(&pin->pin.filter->csFilter);