From: Michael Tremer Date: Thu, 15 Apr 2021 16:28:34 +0000 (+0000) Subject: downloader: Allow relative URLs when baseurl is set X-Git-Tag: 0.9.28~1285^2~363 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=614934ff59016ece9b7f272b997137f0b8e472b8;p=pakfire.git downloader: Allow relative URLs when baseurl is set Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/downloader.c b/src/libpakfire/downloader.c index 7e710872a..d5578a92a 100644 --- a/src/libpakfire/downloader.c +++ b/src/libpakfire/downloader.c @@ -250,7 +250,7 @@ static struct pakfire_transfer* pakfire_downloader_create_transfer( DEBUG(downloader->pakfire, "Adding download of %s\n", url); // Do not allow relative URLs when no mirrors are set - if (!pakfire_url_is_absolute(url) && !mirrors) { + if (!pakfire_url_is_absolute(url) && !(mirrors || *downloader->baseurl)) { ERROR(downloader->pakfire, "Relative URLs cannot be used without a mirrorlist\n"); errno = EINVAL; return NULL; @@ -522,7 +522,7 @@ static int pakfire_downloader_prepare_transfer(struct pakfire_downloader* downlo curl_easy_setopt(transfer->handle, CURLOPT_URL, transfer->url); // Join path if we are using mirrors - } else if (!pakfire_mirrorlist_empty(transfer->mirrors)) { + } else if (transfer->mirrors && !pakfire_mirrorlist_empty(transfer->mirrors)) { int r = pakfire_transfer_select_mirror(downloader, transfer); if (r) return r;