[VCM] Fix crash with NVIDIA broadcaster (#16202)

This commit is contained in:
Andrey Nekrasov
2022-02-11 17:29:13 +03:00
committed by GitHub
parent 01a3106450
commit 9e029c0867

View File

@@ -713,6 +713,9 @@ HRESULT VideoCaptureProxyFilter::EnumPins(IEnumPins** ppEnum)
return E_POINTER;
}
*ppEnum = nullptr;
auto enumerator = winrt::make_self<ObjectEnumerator<IPin, IEnumPins>>();
auto detached_enumerator = enumerator.detach();
*ppEnum = detached_enumerator;
std::unique_lock<std::mutex> lock{ _worker_mutex };
@@ -801,9 +804,8 @@ HRESULT VideoCaptureProxyFilter::EnumPins(IEnumPins** ppEnum)
}
}
auto enumerator = winrt::make_self<ObjectEnumerator<IPin, IEnumPins>>();
enumerator->_objects.emplace_back(_outPin);
*ppEnum = enumerator.detach();
detached_enumerator->_objects.emplace_back(_outPin);
return S_OK;
}