mirror of
https://github.com/bevyengine/bevy
synced 2024-12-21 02:23:08 +00:00
106db47f69
# Objective - The multithreaded executor has some weird UB related to stacked borrows and async blocks - See my explanation on discord https://discord.com/channels/691052431525675048/749335865876021248/1286359267921887232 - Closes #15296 (can this be used to close PRs?) ## Solution - Don't create a `&mut World` reference outside `async` blocks and then capture it, but instead directly create it inside the `async` blocks. This avoids it being captured, which has some weird requirement on its validity. ## Testing - Added a regression test |
||
---|---|---|
.. | ||
executor | ||
condition.rs | ||
config.rs | ||
graph_utils.rs | ||
mod.rs | ||
schedule.rs | ||
set.rs | ||
stepping.rs |