Просмотр исходного кода

fixing segfault when using a rule with only a path (#791)

* fixing segfault when using a rule with only a path

* DRYing
Zachary Rice 4 лет назад
Родитель
Сommit
b91799aa18
1 измененных файлов с 15 добавлено и 5 удалено
  1. 15 5
      report/sarif.go

+ 15 - 5
report/sarif.go

@@ -54,12 +54,22 @@ func getRules(cfg config.Config) []Rules {
 	// TODO	for _, rule := range cfg.Rules {
 	var rules []Rules
 	for _, rule := range cfg.Rules {
-		rules = append(rules, Rules{
-			ID:   rule.RuleID,
-			Name: rule.Description,
-			Description: ShortDescription{
+		shortDescription := ShortDescription{
+			Text: rule.Description,
+		}
+		if rule.Regex != nil {
+			shortDescription = ShortDescription{
 				Text: rule.Regex.String(),
-			},
+			}
+		} else if rule.Path != nil {
+			shortDescription = ShortDescription{
+				Text: rule.Path.String(),
+			}
+		}
+		rules = append(rules, Rules{
+			ID:          rule.RuleID,
+			Name:        rule.Description,
+			Description: shortDescription,
 		})
 	}
 	return rules