Re: [webrtc-pc] Racy setParameters()/getParameters() behavior (#2315)

I should clarify ambiguity in that last one:

> transactionId still matters because the sequence
>
> a = getParameters()
> await something
> b = getParameters()
> setParameters(a)
> 
> needs to fail.

It depends on what "`something`" is:
1. If it's `await 0` or e.g. `await Promise.resolve()`, then only a microtask is queued, and in that case it MUST NOT fail, because `a` and `b` are identical (no difference is possible since all modifiers (like *setParameters* and SRD) queue a task.
2. If it's `await pendingPromise` where `pendingPromise` is not resolved (and will not become resolved on this run or microtask run), then a task is queued, which means it will *always* fail (in fact `b` would have failed as well).

-- 
GitHub Notification of comment by jan-ivar
Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2315#issuecomment-558224922 using your GitHub account

Received on Monday, 25 November 2019 16:09:58 UTC