func (s *codec) writeHeaderData(header *rpc4.Header, data []byte) (err error) { if len(data) > 0 { header.PayloadPresent = proto.Bool(true) } if err = writeProto(s.w, header); err == nil && header.GetPayloadPresent() { err = writeData(s.w, data) } return }