V3115. It is not recommended to throw exceptions from 'Equals(object obj)' method.
V3115 Passing 'null' to '==' operator should not result in 'NullReferenceException'. PropertyPseudoDesc.cs 89
public class PropertyPseudoDesc : TypeSystemEntity
{
....
public static bool operator ==(PropertyPseudoDesc a, PropertyPseudoDesc b)
=> a._type == b._type && a._handle == b._handle;
....
}
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. WinEventTests.cs 65
public override bool Equals(object obj)
{
if (typeof(EventData) == obj.GetType())
{
return Equals((EventData)obj);
}
else
{
return base.Equals(obj);
}
}
V3115 Passing 'null' to '==' operator should not result in 'NullReferenceException'. ScottPlot CoordinateRangeMutable.cs 188
public class CoordinateRangeMutable : IEquatable<CoordinateRangeMutable>
{
....
public static bool operator ==(CoordinateRangeMutable a,
CoordinateRangeMutable b)
{
return a.Equals(b);
}
public static bool operator !=(CoordinateRangeMutable a,
CoordinateRangeMutable b)
{
return !a.Equals(b);
}
}
Similar errors can be found in some other places:
V3115 Passing 'null' to '==' operator should not result in 'NullReferenceException'. ResizeOptions.cs 34
public static bool operator ==(ResizeOptions l, ResizeOptions r)
=> l.Equals(r);
public static bool operator !=(ResizeOptions l, ResizeOptions r)
=> !l.Equals(r);
Similar errors can be found in some other places:
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. FilePatternMatch.cs 61
public override bool Equals(object obj)
{
return Equals((FilePatternMatch) obj);
}
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. ResCulture.cs 28
public class ResCulture
{
public string Title { get; set; }
public string Value { get; set; }
public bool Available { get; set; }
public override bool Equals(object obj)
{
return Title.Equals(((ResCulture) obj).Title);
}
....
}
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. CharacterRange.cs 56
public override bool Equals(object obj)
{
if (obj.GetType() != typeof(CharacterRange)) // <=
return false;
CharacterRange cr = (CharacterRange)obj;
return ((_first == cr.First) && (_length == cr.Length));
}
V3115 CWE-684 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. CurveEditorSelection.cs 74
public override bool Equals(object _other)
{
CurveSelection other = (CurveSelection)_other;
return other.curveID == curveID && other.key == key &&
other.type == type;
}
Similar errors can be found in some other places:
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. ICSharpCode.SharpDevelop ServiceReferenceMapFile.cs 31
public override bool Equals(object obj)
{
var rhs = obj as ServiceReferenceMapFile;
return FileName == rhs.FileName;
}
V3115 Passing 'null' to 'Equals' method should not result in 'NullReferenceException'. EpisodeInfo.cs 561
public override bool Equals(object obj)
{
EpisodeInfo other = obj as EpisodeInfo;
if (obj == null) return false;
if (TvdbId > 0 && other.TvdbId > 0)
return TvdbId == other.TvdbId;
....
}
Instead of 'other' variable used 'obj' variable for 'null' checking.
V3115 Passing 'null' to 'Equals(object obj)' method should not result in 'NullReferenceException'. Git.hub Organization.cs 14
public override bool Equals(object obj)
{
return GetHashCode() == obj.GetHashCode(); // <=
}
Similar errors can be found in some other places: