On Thu Aug 11 16:53:21 2022 +0000, **** wrote:
Zebediah Figura (she/her) replied on the mailing list:
On 8/11/22 11:45, R��mi Bernon wrote: > @@ -225,6 +248,20 @@ static HRESULT asf_reader_cleanup_stream(struct strmbase_filter *iface) > > TRACE("iface %p\n", iface); > > + while (filter->status == -1) > + SleepConditionVariableCS(&filter->status_cv, &filter->filter.filter_cs, INFINITE); We're always waiting for state changes to complete after making them; why do we need this? _______________________________________________ wine-gitlab mailing list -- wine-gitlab@winehq.org To unsubscribe send an email to wine-gitlab-leave@winehq.org
I think there's always a possibility that Start / Stop gets called concurrently, and because we're leaving the filter CS while waiting for the change it's then possible to initiate another state change concurrently.