Search Issue Tracker
Fixed in 2019.3.X
Fixed in 2019.2.X
Votes
1
Found in
2018.3.0a1
2018.3.6f1
2019.1.0a1
2019.2.0a1
Issue ID
1130193
Regression
No
[UWP] await on UI thread continues on a background thread on IL2CPP scripting backend
Steps to reproduce:
1. Download attached project
2. Build a UWP player (IL2CPP, x64, Debug)
3. When app launches click the button to open UWP pop up
4. Close pop up
Expected results: Second UWP pop up shows up
Actual results: Player crashes. In 2018.3.13f and 2017.4 app doesn't crash, but the second pop up doesn't show up
Reproduced with: 2019.2.0a6, 2019.1.0a5, 2018.3.7f1, 2017.4.21f1
Assertion failed on expression: 'CurrentThreadIsMainThread()'
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.UnhandledExceptionHandler:<RegisterUECatcher>m__0(Object, UnhandledExceptionEventArgs)
System.UnhandledExceptionEventHandler:Invoke(Object, UnhandledExceptionEventArgs)
Note:
- not reproducible on .NET
Workaround: after await, use UnityEngine.WSA.Application.InvokeOnUIThread() to get back onto the UI thread. Like so:
MessageDialog dialog1 = new MessageDialog("Dialog #1");
await dialog1.ShowAsync();
UnityEngine.WSA.Application.InvokeOnUIThread(async () =>
{
MessageDialog dialog2 = new MessageDialog("Dialog #2");
await dialog2.ShowAsync();
}, false);
-
seven_
Mar 07, 2019 10:52
We are seeing similar crashes directly after this output in the debug version:
Assertion failed on expression: 'CurrentThreadIsMainThread()'
Assertion failed on expression: 'g_ThreadedGfxDevice'We do not open a dialog though. The Unity player crashes shortly after starting up startup on some (rather older) devices.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Building 3D Sample Scenes (URP) Project fails
- Alpha channel is disabled when Alpha Clip Threshold is set to 0
- The Physics 2D Profiler module does not display the information about processed physics in the scene when profiling the application as a Development Build
- A Script Component that has a serialized custom class is not detecting changes in the first boolean variable when entering the Play mode with the Script Components GameObject opened in the Inspector
- “SendMessage cannot be called during Awake“ warnings appear when loading a scene with “LoadSceneAsync“ if using UI Toolkit in the scene
Resolution Note (fix version 2019.3):
Fixed in: 2019.3.0a7, 2019.2.0b7