Search Issue Tracker
By Design
Votes
9
Found in
4.3.0f4
Issue ID
583896
Regression
Yes
Mono/Unity does not perform null checks properly
To reproduce:
1. Open the attached project
2. Attach the script to the Main Camera
3. Run the scene
4. Observe the logs in the console
5. Observe the script content
----
Script tries to assign a collider that does not exist to a variable then add it to List<Component> if it's not null. The variable gets added to the list but components[0] is null:
var obj = GetComponent<Collider>(); //Get a component that does not exist
components.AddNotNull(obj); //Add it if it is not null
//Check result
Debug.Log("Number of items: " + components.Count + ".");
Debug.Log("First value: " + components[0] + ".");
Explanation:
http://blogs.unity3d.com/2014/05/16/custom-operator-should-we-keep-it/
Comments (2)
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
JoshPeterson
Sep 16, 2014 12:22
We have determined that although this behavior is odd, it is by design at the moment. Please see the discussion in the forum here for more details:
http://forum.unity3d.com/threads/null-check-inconsistency-c.220649
User1234
Apr 26, 2014 16:44
This issue sounds very much like the cause of an NGUI problem reported at...
http://www.tasharen.com/forum/index.php?topic=7515.0
"NGUITools.FindInParents fails sometimes"