github / github/codeql

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

Aperta
#2,751 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
C# false-positive
Lingua principale
CodeQL
Stelle
10.1k
Fork
2.1k
Merge medio
2g 15h
PR unite (30g)
141

Descrizione

**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

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.