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 9e3f9ac3c0
.
* 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
master
parent
44ce3ebb46
commit
e2922f527e
|
@ -557,7 +557,7 @@ initial connection on which HTTP requests are sent."
|
|||
(('connection 'close)
|
||||
(close-port p)
|
||||
(connect #f ;try again
|
||||
(append tail (drop requests processed))
|
||||
(drop requests (+ 1 processed))
|
||||
result))
|
||||
(_
|
||||
(loop tail (+ 1 processed) result)))))))))) ;keep going
|
||||
|
|
Reference in New Issue