multi: xfer table/bitset, handle limits

* calculate capacity growth on multi's xfer table and bitsets to
  work correctly when approaching UINT_MAX
* uint-bset: track the first 64bit slot used. This avoids slot scans
  on empty sets.
* uint-tbl: remove restriction to grow ot UINT_MAX, it is multi's
  job to enforce limits suitable for its use
* test751: use curl_mfprintf() for error messages

Closes #17731
This commit is contained in:
Stefan Eissing 2025-06-24 12:57:04 +02:00 committed by Daniel Stenberg
parent 65f8253336
commit e80c893254
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
5 changed files with 60 additions and 29 deletions

View file

@ -42,6 +42,7 @@
struct uint_bset {
curl_uint64_t *slots;
unsigned int nslots;
unsigned int first_slot_used;
#ifdef DEBUGBUILD
int init;
#endif