github / github/codeql

LGTM.com - false positive - cs/equals-on-unrelated-types for types like Uri that override Equals

未关闭
#2,751 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
C# false-positive
主要语言
CodeQL
星标
10.1k
派生
2.1k
平均合并
2 天 15 小时
30 天内合并 PR
141

描述

**Description of the false positive**

In general, the `cs/equals-on-unrelated-types` rule makes sense: https://lgtm.com/rules/1506096656531/

However, there are certain types, such as `Uri` which handle specific sets of types for equality in the `Equals` override method. In this particular case, `Uri.Equals` allows for the object to be `string` and tries to create a `Uri` from that string before comparing.
https://github.com/dotnet/runtime/blob/94ca567c76d4b2a8a5b2e744e3d9559abbcefdb0/src/libraries/System.Private.Uri/src/System/Uri.cs#L1629-L1657

**URL to the alert on the project page on LGTM.com**

https://lgtm.com/projects/g/dotnet/corefx/snapshot/4fed824926d1c659c494bd5261fbae0236b2e9da/files/src/System.Private.Uri/src/System/UriBuilder.cs?sort=name&dir=ASC&mode=heatmap#V364

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。