@@ -189,8 +189,8 @@ func (r *DARetriever) processBlobs(ctx context.Context, blobs [][]byte, daHeight
189189
190190 // Handle empty data case
191191 if data == nil {
192- if r . isEmptyDataExpected (header ) {
193- data = r . createEmptyDataForHeader (ctx , header )
192+ if isEmptyDataExpected (header ) {
193+ data = createEmptyDataForHeader (ctx , header )
194194 delete (r .pendingHeaders , height )
195195 } else {
196196 // keep header in pending headers until data lands
@@ -289,24 +289,6 @@ func (r *DARetriever) tryDecodeData(bz []byte, daHeight uint64) *types.Data {
289289 return & signedData .Data
290290}
291291
292- // isEmptyDataExpected checks if empty data is expected for a header
293- func (r * DARetriever ) isEmptyDataExpected (header * types.SignedHeader ) bool {
294- return len (header .DataHash ) == 0 || bytes .Equal (header .DataHash , common .DataHashForEmptyTxs )
295- }
296-
297- // createEmptyDataForHeader creates empty data for a header
298- func (r * DARetriever ) createEmptyDataForHeader (ctx context.Context , header * types.SignedHeader ) * types.Data {
299- return & types.Data {
300- Txs : make (types.Txs , 0 ),
301- Metadata : & types.Metadata {
302- ChainID : header .ChainID (),
303- Height : header .Height (),
304- Time : header .BaseHeader .Time ,
305- LastDataHash : nil , // LastDataHash must be filled in the syncer, as it is not available here, block n-1 has not been processed yet.
306- },
307- }
308- }
309-
310292// assertExpectedProposer validates the proposer address
311293func (r * DARetriever ) assertExpectedProposer (proposerAddr []byte ) error {
312294 if string (proposerAddr ) != string (r .genesis .ProposerAddress ) {
@@ -342,3 +324,21 @@ func (r *DARetriever) assertValidSignedData(signedData *types.SignedData) error
342324
343325 return nil
344326}
327+
328+ // isEmptyDataExpected checks if empty data is expected for a header
329+ func isEmptyDataExpected (header * types.SignedHeader ) bool {
330+ return len (header .DataHash ) == 0 || bytes .Equal (header .DataHash , common .DataHashForEmptyTxs )
331+ }
332+
333+ // createEmptyDataForHeader creates empty data for a header
334+ func createEmptyDataForHeader (ctx context.Context , header * types.SignedHeader ) * types.Data {
335+ return & types.Data {
336+ Txs : make (types.Txs , 0 ),
337+ Metadata : & types.Metadata {
338+ ChainID : header .ChainID (),
339+ Height : header .Height (),
340+ Time : header .BaseHeader .Time ,
341+ LastDataHash : nil , // LastDataHash must be filled in the syncer, as it is not available here, block n-1 has not been processed yet.
342+ },
343+ }
344+ }
0 commit comments