[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#51441] [PATCH] substitutes: keep base's uri-path for Properly const
From: |
Z572 |
Subject: |
[bug#51441] [PATCH] substitutes: keep base's uri-path for Properly construct URL. |
Date: |
Fri, 29 Oct 2021 12:33:42 +0800 |
User-agent: |
mu4e 1.6.6; emacs 28.0.50 |
Peng Mei Yu <pengmeiyu@riseup.net> writes:
> Hi,
>
> Z572 via Guix-patches via writes:
>
>> @@ -158,7 +159,8 @@ (define (narinfo-request cache-url path)
>> "Return an HTTP request for the narinfo of PATH at CACHE-URL."
>> (let* ((base (string->uri cache-url))
>> (ref (build-relative-ref
>> - #:path (string-append (store-path-hash-part path)
>> ".narinfo")))
>> + #:path (string-append (uri-path base) "/"
>> + (store-path-hash-part path)
>> ".narinfo")))
>> (url (resolve-uri-reference ref base))
>> (headers '((User-Agent . "GNU Guile"))))
>> (build-request url #:method 'GET #:headers headers)))
>> --
>
> It seems that the root cause for the problem is that cache-url lacks a
> trailing slash. Therefore the last path component is stripped from
> `base` when we compute (resolve-uri-reference ref base). So I think
> ensuring cache-url ends with a slash ("/") is a better approach.
Yes, you are right.
--
over