Skip to content

Commit c79194b

Browse files
committed
Add safer constraints when looping through map elements
1 parent a0fdf1e commit c79194b

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

internal/fields/model.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,11 @@ func (fds *FieldDefinitions) UnmarshalYAML(value *yaml.Node) error {
108108
return nil
109109
case yaml.MappingNode:
110110
// Fields are defined as a map, this happens in ecs fields files.
111+
if len(value.Content)%2 != 0 {
112+
return fmt.Errorf("pairs of key-values expected in map")
113+
}
111114
var fields []FieldDefinition
112-
for i := 0; i < len(value.Content); i += 2 {
115+
for i := 0; i+1 < len(value.Content); i += 2 {
113116
key := value.Content[i]
114117
value := value.Content[i+1]
115118

0 commit comments

Comments
 (0)