summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-02-24 19:58:13 -0500
committerMark H Weaver <mhw@netris.org>2015-02-24 20:01:55 -0500
commitc964a15d8239d28144be51868868aa21d5d4ddce (patch)
tree395aa9a15b17e173b07803f61a49d2e83837bfe8
parentda71f145c6bf1aab4e5e9378609f4d5d6eae1093 (diff)
downloadguix-c964a15d8239d28144be51868868aa21d5d4ddce.tar.gz
download: Cope with Guile 2.0.6 or earlier.
* guix/build/download.scm: Do not attempt to support relative URIs in
  "Location" headers if 'declare-relative-uri-header!' is not present.
  This is the case for Guile 2.0.6 or earlier.
-rw-r--r--guix/build/download.scm10
1 files changed, 6 insertions, 4 deletions
diff --git a/guix/build/download.scm b/guix/build/download.scm
index 16afb1dce1..e8d61e0d92 100644
--- a/guix/build/download.scm
+++ b/guix/build/download.scm
@@ -211,10 +211,12 @@ which is not available during bootstrap."
 (unless (or (> (string->number (major-version)) 2)
             (> (string->number (minor-version)) 0)
             (> (string->number (micro-version)) 11))
-  (let ((declare-relative-uri-header!
-         (module-ref (resolve-module '(web http))
-                     'declare-relative-uri-header!)))
-    (declare-relative-uri-header! "Location")))
+  (let ((var (module-variable (resolve-module '(web http))
+                              'declare-relative-uri-header!)))
+    ;; If 'declare-relative-uri-header!' doesn't exist, forget it.
+    (when (and var (variable-bound? var))
+      (let ((declare-relative-uri-header! (variable-ref var)))
+        (declare-relative-uri-header! "Location")))))
 
 (define (resolve-uri-reference ref base)
   "Resolve the URI reference REF, interpreted relative to the BASE URI, into a