substitute: 'http-multiple-get' processes each request only once.
authorLudovic Courtès <ludo@gnu.org>
Wed, 15 Jan 2020 09:05:54 +0000 (10:05 +0100)
committerLudovic Courtès <ludo@gnu.org>
Wed, 15 Jan 2020 17:40:43 +0000 (18:40 +0100)
commite2922f527ee8d891a41b5086637fa560a1c2ddd8
tree94b8088674fffcbe909a603203c3bfa73e707b23
parent44ce3ebb46a4e63a892ef1aac2c7b5fa3dec28ce
substitute: 'http-multiple-get' processes each request only once.

Fixes <https://bugs.gnu.org/39090>.
Reported by Gábor Boskovits <boskovits@gmail.com>.
Fixes a regression introduced in 9e3f9ac3c00906f5bc647ea8398e4ed5a370614e.

* guix/scripts/substitute.scm (http-multiple-get): In the "Connection: close"
case, pass (drop requests (+ 1 processed)) to 'loop' as the remaining
REQUESTS value.

Previously, we would pass a list containing duplicates, and thus the
final result would also contain duplicates.  When sent to the daemon,
that list would lead to a daemon error:

  got unexpected path `/gnu/store/…' from substituter
guix/scripts/substitute.scm