Merge pull request #121771 from pohly/apimachinery-encoding-shortcut

encoding: avoid setting GVK unnecessarily
This commit is contained in:
Kubernetes Prow Robot 2023-12-13 23:54:34 +01:00 committed by GitHub
commit 508e3b94fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -236,10 +236,14 @@ func (e WithVersionEncoder) Encode(obj Object, stream io.Writer) error {
gvk = preferredGVK gvk = preferredGVK
} }
} }
kind.SetGroupVersionKind(gvk)
err = e.Encoder.Encode(obj, stream) // The gvk only needs to be set if not already as desired.
kind.SetGroupVersionKind(oldGVK) if gvk != oldGVK {
return err kind.SetGroupVersionKind(gvk)
defer kind.SetGroupVersionKind(oldGVK)
}
return e.Encoder.Encode(obj, stream)
} }
// WithoutVersionDecoder clears the group version kind of a deserialized object. // WithoutVersionDecoder clears the group version kind of a deserialized object.