6e93927f63
We use 'wasm-bindgen-futures' as our futures executor on web, which in turn uses 'queueMicroTask'. This can result in the browser executing one of our futures while we're still inside our `requestAnimationFrame` callback (in particular, while we still have the `Player` mutex locked). We now detect this condition by attempting the lock the Player mutex inside of our `spawn_local` future. If this fails, we `await` a `setTimeout`-based promise, which ensures that our code runs in a new top-level `setTimeout` javascript 'task' (outside of our `requestAnimationFrame` callback). |
||
---|---|---|
.. | ||
src | ||
Cargo.toml |