Search Issue Tracker
By Design
Votes
2
Found in
2018.4
2019.3.4f1
2020.2
Issue ID
1260637
Regression
No
[WebGL] Misleading JSON parse errors are thrown when Javascript interop crashes on unicode chars
Reproduction steps:
1. Open the attached project ("case_1260637-unicode-javascript.zip")
2. Switch the build target to WebGL
3. Make a build and run it in browser
Expected result: No errors are thrown (or errors explain the real issue)
Actual result: "ArgumentException: JSON parse error: Missing a comma or '}' after an object member." error is thrown, even though the JSON file is correct
Reproducible with: 2018.4.25f1, 2019.4.4f1, 2020.1.0b16, 2020.2.0a18
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
- Fixing Message Loss in UMPE During Domain Reload
- The Editor freezes when ScheduleReadOnly of IJobParallelForTransform with dependency is used
- Text is truncated in the Inspector when the display scale is set to 150%
- CancellationTokenSource(<timeout>) has incorrect cancellation status when used in WebGL Player
- VFX property value names are cut off when properties with 'Arc' are viewed in the VFX Blackboard
Resolution Note (2020.2.X):
Problem with user code:
stringToUTF8(returnStr, buffer, returnStr.length + 1);
is incorrect. For stringToUTF8(), you need to pass the maximum number of bytes that are allowed to be written as the last parameter, but here the actual character length of the string + 1 is being passed. Since the character 'é' takes up two bytes, the code ends up swallowing one byte from the output, which caused the '}' to be dropped.