~ruther/guix-local

6dfd683dc742ebb80983137f80a457af38ca7d8d — Ludovic Courtès 9 years ago 9909b8b
download: Properly parse ftp:// URLs that lack user info.

Fixes a regression introduced in
a4f542341511f33ece18d16b68118214da8143ec.

Reported by Hartmut Goebel.

* guix/build/download.scm (ftp-fetch): Account for the case where
'uri-userinfo' returns #f.  Remove the case where it returns "" since
that cannot happen.
1 files changed, 2 insertions(+), 4 deletions(-)

M guix/build/download.scm
M guix/build/download.scm => guix/build/download.scm +2 -4
@@ 241,10 241,8 @@ and 'guix publish', something like
(define* (ftp-fetch uri file #:key timeout)
  "Fetch data from URI and write it to FILE.  Return FILE on success.  Bail
out if the connection could not be established in less than TIMEOUT seconds."
  (let* ((userinfo (string-split (uri-userinfo uri) #\:))
         (conn (match userinfo
                 (("")
                  (ftp-open (uri-host uri) #:timeout timeout))
  (let* ((conn (match (and=> (uri-userinfo uri)
                             (cut string-split <> #\:))
                 (((? string? user))
                  (ftp-open (uri-host uri) #:timeout timeout
                                           #:username user))