Search Issue Tracker
By Design
By Design in 2023.1.X
Votes
1
Found in
2021.3.12f1
2022.1.20f1
2022.2.0b12
2023.1.0a16
Issue ID
UUM-17569
Regression
Yes
Serialization produces inconsistent results when accessing it a lot of times
Reproduction steps:
- Open the attached project
- Open the “/Assets/Scenes/SampleScene.unity” Scene
- Enter the Play Mode
- Click the Button in the middle of the Game View many times
- Observe the outputs in the Console
Expected result: “K120” message is logged to the Console on each press
Actual result: The outputs are inconsistent and vary from errors to messages like “K䈱2䈰” or “nj120”
Reproducible with: 2021.2.0a18, 2021.2.29f1, 2021.3.12f1, 2022.1.20f1, 2022.2.0b12, 2023.1.0a16
Not reproducible with: 2020.3.40f1, 2021.2.0a17
Reproducible on: Windows 10 (21H2)
Comments (2)
-
Lib_one
Oct 26, 2022 07:08
This bug prevents to update projects from Unity2020 to more recent versions as the saved files are not properly deserialize.
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
- Required SpriteMask class (ID 331) is stripped when "Strip Engine Code" is enabled
- “Maximized serialized file backup not found” error is thrown when minimizing a window in a newly opened project
- Build stack trace contains invalid lines when building with IL2CPP using scripts with delegates containing generic types in the signature
- Entities Systems window has a “Show Full Player Loop” dropdown which does nothing when clicked after enabling “Show Full Player Loop”
- Entities Hierarchy Search “Show/Hide” button’s Lens Icon is blurry when the Editor is on an external monitor
Resolution Note:
Odin has been relying on a string initialization behavior that was unique to the old mono runtime that has since been upgraded starting in 2021.x releases. The mono upgrade has introduced an optimization where if the first character of a given string is null that it will not fill the string with null characters and instead returns whatever was on the heap at the time of string allocation. The Odin developer has been notified of this issue and has fixed it on their side. Odin 3.1.7 should have the fix.
Resolution Note (2023.1.X):
Odin has been relying on a string initialization behavior that was unique to the old mono runtime that has since been upgraded starting in 2021.x releases. The mono upgrade has introduced an optimization where if the first character of a given string is null that it will not fill the string with null characters and instead returns whatever was on the heap at the time of string allocation. The Odin developer has been notified of this issue and has fixed it on their side. Odin 3.1.7 should have the fix.