summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-11-11 15:17:52 +0100
committerLudovic Courtès <ludo@gnu.org>2017-11-11 15:20:02 +0100
commit65a19abf3fad2dee86cc3585124ca2f85cf115b7 (patch)
tree895490247de7d5752fb3fcaecdf634eb718beb6a
parent56f35d92f5b5d80f46c04f443d18876daf40c240 (diff)
downloadguix-65a19abf3fad2dee86cc3585124ca2f85cf115b7.tar.gz
download: Work around more bogus HTTP handling in Guile 2.2 <= 2.2.2.
Reported by Mark H Weaver <mhw@netris.org>
at <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00190.html>.

* guix/build/download.scm (guile-2.2) [write-request-line]: Backport
Guile commit 6ad28ae3bc6a6d9e95ab7d70510d12c97673a143.
-rw-r--r--guix/build/download.scm9
1 files changed, 5 insertions, 4 deletions
diff --git a/guix/build/download.scm b/guix/build/download.scm
index 790576b235..a65c7b9964 100644
--- a/guix/build/download.scm
+++ b/guix/build/download.scm
@@ -514,7 +514,8 @@ port if PORT is a TLS session record port."
         (declare-relative-uri-header! "Location")))))
 
 ;; XXX: Work around broken proxy handling on Guile 2.2 <= 2.2.2, fixed in
-;; Guile commit 7d0d9e2c25c1e872cfc7d14ab5139915f1813d56.  See bug report at
+;; Guile commits 7d0d9e2c25c1e872cfc7d14ab5139915f1813d56 and
+;; 6ad28ae3bc6a6d9e95ab7d70510d12c97673a143.  See bug report at
 ;; <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00070.html>.
 (cond-expand
   (guile-2.2
@@ -539,9 +540,9 @@ port if PORT is a TLS session record port."
                (put-string port "://")
                (cond
                 ((string-index host #\:)          ;<---- The fix is here!
-                 (put-char #\[ port)
-                 (put-string port host
-                             (put-char port #\])))
+                 (put-char port #\[)              ;<---- And here!
+                 (put-string port host)
+                 (put-char port #\]))
                 (else
                  (put-string port host)))
                (unless ((@@ (web uri) default-port?) scheme host-port)