Search Issue Tracker
Fixed in 2020.1.X
Investigate why .meta files are sometimes not parsed right
The FileHasher.cpp emits an error whenever particular entries in a .meta file are mistaken for something which is not a Scalar value.
It has been noticed that when a .meta file ends with two spaces (the YAML standard for indentation) it sometimes mistakes the entry above it as being a mapping node.
One example can be found in this file:
Where assetBundleVariant: is followed by a new line, and then 2 space characters (ascii value 32) before reaching the EOF marker.
Steps to reproduce:
- Create a new Unity project
- Create a new asset (a script for example)
- Close the project
- Find the location where the asset was created, and modify the matching *.meta file in a text editor
- Modify the end of the file so the last line is a line with 2 spaces, preceded by the "assetBundleVariant: " line
- Re-open the the project in Unity
- Observe that in approximately 1 of every 20 attempts to reproduce, an exception will appear in the console:
Unable to parse file Assets/NewBehaviourScript.cs.meta: [Parser Failure at line 13: Expect ':' between key and value within mapping]
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- Audio preview in Inspector does not work when Disable Unity Audio is enabled
- Crash on MemoryManager::Deallocate when reimporting VFX Graph Asset
- Crash on CachedWriter::Write when building AssetBundle
- Build crash when loading next scene
- Debug.Log applies formatting for date and time in the DateTime struct when using string interpolation