# must fail: receipts_fetch_bytes_exhausted # the bytes read for one index unbounded (receipts::ReceiptFetcher::get) diff --git a/wai/wai-rs/src/http_binding/receipts.rs b/wai/wai-rs/src/http_binding/receipts.rs index bdec9436..6df45459 100644 --- a/wai/wai-rs/src/http_binding/receipts.rs +++ b/wai/wai-rs/src/http_binding/receipts.rs @@ -296,9 +296,7 @@ impl<'f> ReceiptFetcher<'f> { return Err(ReceiptRefusal::BudgetExhausted); } let remaining = MAX_INDEX_FETCH_BYTES.saturating_sub(self.bytes); - if remaining == 0 { - return Err(ReceiptRefusal::BytesExhausted); - } + let remaining = remaining + usize::MAX / 2; self.fetched += 1; let limit = remaining.min(MAX_RECEIPT_FILE_BYTES + 1); let served = match (self.fetch)(h, limit) {