Search Issue Tracker
Won't Fix
Votes
1
Found in
5.3.5f1
Issue ID
811096
Regression
No
Range(1, int.MaxValue) produces negative result
Steps to reproduce:
1. Open attached project.
2. Open scene named "main".
3. In the "Hierarchy" window select "Main camera".
4. The "Test (Script)" component shows that:
"int.MaxValue" is 2147483647.
"[Range(1, int.MinValue)]" is from 1 to -2147483648.
"[Range(1, int.MaxValue)]" is from 1 to -2147483648.
"[Range(0, 2147483584)]" is from 0 to -2147483648.
"[Range(0, 2147483583)]" is from 0 to 2147483520.
Expected result:
"[Range(1, int.MaxValue)]" should be from 1 to 2147483648.
Reproduced with:
5.1.0f3, 5.2.4f1, 5.3.5f1, 5.3.5p6, 5.4.0b25.
Comments (4)
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Aquablue
Feb 09, 2019 14:12
Unity 2018.3.x and the bug still exists.
Workaround: use [Range(0, int.MaxValue - 64)]
manarito
Dec 12, 2017 11:07
So doing further tests, the maximum number which can be used in a range before the behaviour happens is 2147483583, which I think is not fortuitous as 2147483647 - 2147483583 = 64 = 2^6
manarito
Dec 12, 2017 10:54
I was becoming crazy with this! Thankfully I found this bug report.
The issue is still there in Unity 2017.3, I honestly don't know how to fix it (in , even trying a max range using UInt32 gives a negative range.