File tree Expand file tree Collapse file tree 1 file changed +13
-10
lines changed
Expand file tree Collapse file tree 1 file changed +13
-10
lines changed Original file line number Diff line number Diff line change @@ -104,9 +104,19 @@ where
104104
105105 for _ in 0 ..limit {
106106 if let Some ( header) = self . client . header_by_hash_or_number ( block) . unwrap_or_default ( ) {
107+ let number = header. number ( ) ;
108+ let parent_hash = header. parent_hash ( ) ;
109+
110+ total_bytes += header. length ( ) ;
111+ headers. push ( header) ;
112+
113+ if headers. len ( ) >= MAX_HEADERS_SERVE || total_bytes > SOFT_RESPONSE_LIMIT {
114+ break
115+ }
116+
107117 match direction {
108118 HeadersDirection :: Rising => {
109- if let Some ( next) = ( header . number ( ) + 1 ) . checked_add ( skip) {
119+ if let Some ( next) = number. checked_add ( skip) {
110120 block = next. into ( )
111121 } else {
112122 break
@@ -117,24 +127,17 @@ where
117127 // prevent under flows for block.number == 0 and `block.number - skip <
118128 // 0`
119129 if let Some ( next) =
120- header . number ( ) . checked_sub ( 1 ) . and_then ( |num| num. checked_sub ( skip) )
130+ number. checked_sub ( 1 ) . and_then ( |num| num. checked_sub ( skip) )
121131 {
122132 block = next. into ( )
123133 } else {
124134 break
125135 }
126136 } else {
127- block = header . parent_hash ( ) . into ( )
137+ block = parent_hash. into ( )
128138 }
129139 }
130140 }
131-
132- total_bytes += header. length ( ) ;
133- headers. push ( header) ;
134-
135- if headers. len ( ) >= MAX_HEADERS_SERVE || total_bytes > SOFT_RESPONSE_LIMIT {
136- break
137- }
138141 } else {
139142 break
140143 }
You can’t perform that action at this time.
0 commit comments