However, I am unable to repro the hang @ 100% CPU with straight curl, only with the example I've attached (which mimics how pacman does parallel downloads). Note that the attached 10-at-a-time.c.gz doesn't always hang but it's easy to repro for me after a few tries.
When getting a 200 response but a "soft check" of the time says the
transfer should abort, it needs to:
1. properly switch off reading
2. close the stream, not the connection - in the case of h2
Reported-by: Evangelos Foutras