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);
Comments (1)
-
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
- UnityLinker causes crash when outputting snapshot data for very large projects
- Camera Preview does not detect multiple cameras with same GameObject name
- Crash on TypeTreeIterator::Children() when renaming a corrupted asset while Asset Serialization is set to Mixed
- Cameras (Camera.targetDisplay) render only to Display 0 in the Player when Multi-Display setup is used and DX12 API is set
- [Vulkan] _CameraOpaqueTexture produces a feedback effect on Android Adreno devices when using Vulkan
Resolution Note (fix version 2019.3):
Fixed in: 2019.3.0a7, 2019.2.0b7