From e60b4c61d4cb998e8877cfb63e08d477379fba87 Mon Sep 17 00:00:00 2001 From: Arthur van de Vondervoort Date: Fri, 15 Dec 2023 10:34:25 +0100 Subject: [PATCH] Mitigate System.InvalidCastException --- Design/Rule0040ExplicitlySetRunTrigger.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Design/Rule0040ExplicitlySetRunTrigger.cs b/Design/Rule0040ExplicitlySetRunTrigger.cs index a79397d4..2782c484 100644 --- a/Design/Rule0040ExplicitlySetRunTrigger.cs +++ b/Design/Rule0040ExplicitlySetRunTrigger.cs @@ -28,8 +28,8 @@ private void AnalyzeRunTriggerParameters(OperationAnalysisContext ctx) IInvocationExpression operation = (IInvocationExpression)ctx.Operation; if (operation.TargetMethod.MethodKind != MethodKind.BuiltInMethod) return; - if (!(operation.Instance?.GetSymbol().GetTypeSymbol().GetNavTypeKindSafe() == NavTypeKind.Record || operation.Instance?.GetSymbol().GetTypeSymbol().GetNavTypeKindSafe() == NavTypeKind.RecordRef)) return; if (!buildInMethodNames.Contains(operation.TargetMethod.Name.ToLowerInvariant())) return; + if (!(operation.Instance?.GetSymbol().GetTypeSymbol().GetNavTypeKindSafe() == NavTypeKind.Record || operation.Instance?.GetSymbol().GetTypeSymbol().GetNavTypeKindSafe() == NavTypeKind.RecordRef)) return; if (operation.Arguments.Where(args => SemanticFacts.IsSameName(args.Parameter.Name, "RunTrigger")).SingleOrDefault() == null) ctx.ReportDiagnostic(Diagnostic.Create(DiagnosticDescriptors.Rule0040ExplicitlySetRunTrigger, ctx.Operation.Syntax.GetLocation()));