How to reproduce:
1. Open the attached project "ReportLoadRepro"
2. Go to [Internal link] -> Run Report.Load edge cases
3. Observe the Console
Expected results: All three calls return, with the two damaged files reported as null plus an error string in the out parameter, the same way a file containing arbitrary text is reported as "Invalid file format"
Actual results: The valid report loads, the zero-byte file throws "NullReferenceException" from Report.Load, and the truncated file throws "ArgumentException: JSON parse error: Missing a name for object member." from JsonUtility - neither is reported through the errorMessage out parameter
Reproducible with: 6000.5.9f1, 6000.6.0b9, 6000.7.0a5
Reproducible on: macOS Tahoe 26.6 (M1 Max)
Not reproducible on: No other environment tested
First lines of error:
NullReferenceException: Object reference not set to an instance of an object
at Unity.ProjectAuditor.Editor.Report.Load (System.String path, System.String& errorMessage) [0x00012] in /Users/bokken/build/output/unity/unity/Modules/ProjectAuditorEditor/API/Report.cs:407
ArgumentException: JSON parse error: Missing a name for object member.
at (wrapper managed-to-native) UnityEngine.JsonUtility.FromJsonInternal_Injected(UnityEngine.Bindings.ManagedSpanWrapper&,object,System.Type)
at UnityEngine.JsonUtility.FromJsonInternal (System.String json, System.Object objectToOverwrite, System.Type type)