From 3af67f59dad3dd449557a2f5c67c00da495ef7d2 Mon Sep 17 00:00:00 2001 From: Dave Shanley Date: Wed, 13 Jul 2022 17:01:14 -0400 Subject: [PATCH] Stop nodes from causing a panic if they are missing. Signed-off-by: Dave Shanley --- model/results.go | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/model/results.go b/model/results.go index 6d6831f5..62619080 100644 --- a/model/results.go +++ b/model/results.go @@ -326,15 +326,25 @@ func (rr *RuleResultSet) PrepareForSerialization(info *SpecInfo) { data := strings.Split(string(*info.SpecBytes), "\n") var prep = func(result *RuleFunctionResult, wg *sync.WaitGroup, data []string) { - result.Range = reports.Range{ - Start: reports.RangeItem{ + + var start, end reports.RangeItem + + if result.StartNode != nil { + start = reports.RangeItem{ Line: result.StartNode.Line, Char: result.StartNode.Column, - }, - End: reports.RangeItem{ + } + } + if result.EndNode != nil { + end = reports.RangeItem{ Line: result.EndNode.Line, Char: result.EndNode.Column, - }, + } + } + + result.Range = reports.Range{ + Start: start, + End: end, } result.RuleId = result.Rule.Id result.RuleSeverity = result.Rule.Severity