On Tue Aug 30 17:26:10 2022 +0000, **** wrote:
Zebediah Figura replied on the mailing list:
On 8/30/22 06:24, Nikolay Sivov wrote: > +static HRESULT evr_connect(struct strmbase_renderer *iface, const AM_MEDIA_TYPE *mt) > +{ > + struct evr *filter = impl_from_strmbase_renderer(iface); > + IMFMediaType *media_type; > + HRESULT hr; > + > + if (SUCCEEDED(hr = evr_test_input_type(filter, mt, &media_type))) It's perhaps worth noting that strmbase IPin::ReceiveConnection() [which calls this function] already calls query_accept(). Granted, evr_test_input_type() is also doing some other initialization, but arguably it could be named more appropriately in that case.
Yes, I'll have to review this again. One thing is that query_accept() currently does init-test-release, and does not check if we are already initialized, e.g. in connect(). I'll have to try to see how it works.