Skip to content

Set current SynchronizationContext before the game loop starts

Adam Cigánek requested to merge github/fork/madadam/async-await-fix into master

This Fixes the problem that SynchronizationContext.Current would be null during the call to _EnterTree, _Ready and the first call to _Process thus the task continuations would be scheduled outside the main thread, which is unexpected and might lead to crashes.

With this change, task continuations are scheduled always on the main thread and so async/await can be used without any explicit synchronization, which is what is expected.

Fixes #18849 (closed)

Merge request reports