Fix XValidations deepcopy to copy contents of nested pointers

This commit is contained in:
Joe Betz 2023-07-21 12:55:46 -04:00
parent 4e8908d566
commit c97eb2b5cb
3 changed files with 15 additions and 9 deletions

View File

@ -291,9 +291,11 @@ func (in *JSONSchemaProps) DeepCopy() *JSONSchemaProps {
}
if in.XValidations != nil {
in, out := &in.XValidations, &out.XValidations
*out = make([]ValidationRule, len(*in))
copy(*out, *in)
inValidations, outValidations := &in.XValidations, &out.XValidations
*outValidations = make([]ValidationRule, len(*inValidations))
for i := range *inValidations {
in.XValidations[i].DeepCopyInto(&out.XValidations[i])
}
}
return out

View File

@ -251,9 +251,11 @@ func (in *JSONSchemaProps) DeepCopy() *JSONSchemaProps {
}
if in.XValidations != nil {
in, out := &in.XValidations, &out.XValidations
*out = make([]ValidationRule, len(*in))
copy(*out, *in)
inValidations, outValidations := &in.XValidations, &out.XValidations
*outValidations = make([]ValidationRule, len(*inValidations))
for i := range *inValidations {
in.XValidations[i].DeepCopyInto(&out.XValidations[i])
}
}
return out

View File

@ -267,9 +267,11 @@ func (in *JSONSchemaProps) DeepCopy() *JSONSchemaProps {
}
if in.XValidations != nil {
in, out := &in.XValidations, &out.XValidations
*out = make([]ValidationRule, len(*in))
copy(*out, *in)
inValidations, outValidations := &in.XValidations, &out.XValidations
*outValidations = make([]ValidationRule, len(*inValidations))
for i := range *inValidations {
in.XValidations[i].DeepCopyInto(&out.XValidations[i])
}
}
return out