server/storage/wal: fix oss-fuzz issue 44433

This commit is contained in:
AdamKorcz 2022-02-11 22:06:25 +00:00
parent bba3937f69
commit 0fcb2a628c

View File

@ -213,7 +213,12 @@ func visitEnumNumber(enum protoreflect.EnumDescriptor, number protoreflect.EnumN
if err != nil {
return err
}
return visitEnumValue(enum.Values().Get(int(number)), visitor)
intNumber := int(number)
fields := enum.Values()
if intNumber >= fields.Len() || intNumber < 0 {
return fmt.Errorf("could not visit EnumNumber [%d]", intNumber)
}
return visitEnumValue(fields.Get(intNumber), visitor)
}
func visitEnumValue(enum protoreflect.EnumValueDescriptor, visitor Visitor) error {