guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/06: substitute: 'http-multiple-get' processes each request only once.


From: guix-commits
Subject: 01/06: substitute: 'http-multiple-get' processes each request only once.
Date: Wed, 15 Jan 2020 12:41:20 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit e2922f527ee8d891a41b5086637fa560a1c2ddd8
Author: Ludovic Courtès <address@hidden>
AuthorDate: Wed Jan 15 10:05:54 2020 +0100

    substitute: 'http-multiple-get' processes each request only once.
    
    Fixes <https://bugs.gnu.org/39090>.
    Reported by Gábor Boskovits <address@hidden>.
    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 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm
index 3bf9b87..dfb975a 100755
--- a/guix/scripts/substitute.scm
+++ b/guix/scripts/substitute.scm
@@ -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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]