Search Issue Tracker
Fixed in 2019.2.X
Fixed in 2019.1.X
Votes
4
Found in
2017.3.1p4
Issue ID
1036602
Regression
No
ScriptExecutionOrder ignored when reloading scripts during playmode
To Reproduce:
- Open repro.unity scene
- Press play
- Reimport a script from project view
- observe Console output
ClassA,ClassB and ClassC have ScriptExecutionOrder defined.
On Playmode:
OnEnable ClassA Obj[x]
OnEnable ClassA Obj[y]
OnEnable ClassA Obj[z]
OnEnable ClassB Obj[x]
OnEnable ClassB Obj[y]
OnEnable ClassB Obj[z]
OnEnable ClassC Obj[x]
OnEnable ClassC Obj[y]
OnEnable ClassC Obj[z]
After reimport, classes do not execute in order shown in ScriptExecution order, or even one type after another, an example:
OnEnable ClassB Obj3
OnEnable ClassA Obj3
OnEnable ClassA Obj1
OnEnable ClassC Obj3
OnEnable ClassC Obj2
OnEnable ClassB Obj1
OnEnable ClassC Obj1
OnEnable ClassB Obj2
OnEnable ClassA Obj2
Expect to see OnEnabled called in the same type order as entering playmode for classes with discrete ScriptExecutionOrder.
Reproducible: 2018.3.0a1, 2018.2.0b13, 2018.1.0f2, 2017.1.1p3
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [Android] Memory leaks ~100mb with each HTTP request until Player crashes on IL2CPP ARMv7 builds
- Item selection is offset below when UIToolkit ListView is set to dynamic height mode
- Script recompilation doesn't trigger automatically when switching build targets
- Text gets pushed to the left when typing in a text field
- "The provided object cannot be assigned a managed reference ID because it cannot be serialized on a [SerializeReference] field." thrown in the Console window when using SerializationUtility.SetManagedReferenceIdForObject with an Enum value
Add comment