Search Issue Tracker
By Design
Votes
0
Found in
5.3.4f1
Issue ID
840104
Regression
No
Default string comparer for Enumerable.OrderBy is wrong in webGL
Default string comparer for Enumerable.OrderBy is wrong in webGL
(new string[] { "abc", "XY", "CDE", "ijk" }).OrderBy(s => s).ToArray()
returns [abc, CDE, ijk, XY] on .NET, Unity and Mono, but returns [CDE, XY, abc, ijk] on Unity/webGL
It seems that the default string comparer should be case-insensitive, while it's currently case sensitive in webGL player.
I've tried an iOS build and it sorts correctly, so the issues seems to be confined to the webGL player implementation and not to IL2CPP.
To reproduce:
1. Build and run attached project for WebGL platform
2. Click Manual Test button
3. Notice that Enumerable.OrderBy returns wrong value
Reproducible: 5.5.0b7, 5.4.1.p4, 5.3.6p7
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- File watcher does not trigger after the AcquireFloatingLease and before the Entitlement check
- HDR Output gets disabled in the Editor when Reflection Probe is enabled during runtime
- The "Build and Run" Menu option tries to build for the selected Build Platform instead of the Active Build Platform
- Font kerning breaks at runtime when multiple UI Documents use different fonts
- MissingReferenceException occurs when entering Play mode with a locked GameObject in the Inspector
Add comment