Search Issue Tracker
Fixed in 5.4.0
Votes
0
Found in
5.4.0b9
Issue ID
778962
Regression
No
[ISerializationCallbackReceiver] OnAfterDeserialize/OnBeforeSerialize are called during the serialization
Steps to reproduce:
1. Open attached project
2. Open scene "youpiTest"
3. In console, notice error: SetLogCallbackDefined is not allowed to be called during serialization, call it from Awake or Start instead. Called from script 'TestAfterSerialize' on game object 'GameObject'
5.3 and lower has this instead: SetLogCallbackDefined can only be called from the main thread.
Constructors and field initializers will be executed from the loading thread when loading a scene.
Names of these callbacks implicate that they're going to be called anywhere but during serialization.
Reproduced with: 5.2.4f1, 5.3.4f1, 5.4.0b10
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Shader Graph skybox material is rendered inccorrectly in builds when "Allow Material Override" or "Cast Shadows" are enabled and the "Deferred" Rendering Path is used
- Object motion is affected by incorrectly added rotation motion when importing animations
- Base class's Context Menu method is called when calling it in the Editor from the child class and the child class overrides this method
- Editor crashes with prompt "The file 'MemoryStream' is corrupted! Remove it and launch unity again! [Position out of bounds!]" when adding a serialized field to a precompiled DLL
- Android Player freezes waiting for a texture upload when AssetBundle.LoadFromFile is used
Add comment