LGTM.com - false positive - cs/dereferenced-value-is-always-null when passed by ref to a method like Array.Resize
- Langage dominant
- CodeQL
- Étoiles
- 10.1k
- Forks
- 2.1k
- Merge moyen
- 2 j 15 h
- PR mergées (30 j)
- 141
Description
**Description of the false positive**
In general, the `cs/dereferenced-value-is-always-null` rule makes sense: https://lgtm.com/rules/1506094316834/
However, if a local is passed to a method by `ref`, it is possible that the method changes its value. In particular, if an array is null, `Array.Resize` will set it to not null. This applies generally to any method that accepts a parameter by `ref`.
https://github.com/dotnet/runtime/blob/c5805025613513ca71b905d3cdafdcba0769960d/src/libraries/System.Private.CoreLib/src/System/Array.cs#L43-L61
**URL to the alert on the project page on LGTM.com**
https://lgtm.com/projects/g/dotnet/corefx/snapshot/4fed824926d1c659c494bd5261fbae0236b2e9da/files/src/System.Runtime.Serialization.Formatters/src/System/Runtime/Serialization/FormatterServices.cs?sort=name&dir=ASC&mode=heatmap#x520a4bc6d0c2a055:1
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.