func addDataBytes(blockData *common.BlockData, buf *proto.Buffer) ([]*txindexInfo, error) { var txOffsets []*txindexInfo if err := buf.EncodeVarint(uint64(len(blockData.Data))); err != nil { return nil, err } for _, txEnvelopeBytes := range blockData.Data { offset := len(buf.Bytes()) txid, err := extractTxID(txEnvelopeBytes) if err != nil { return nil, err } if err := buf.EncodeRawBytes(txEnvelopeBytes); err != nil { return nil, err } idxInfo := &txindexInfo{txid, &locPointer{offset, len(buf.Bytes()) - offset}} txOffsets = append(txOffsets, idxInfo) } return txOffsets, nil }