diff options
author | morganamilo <morganamilo@archlinux.org> | 2020-11-30 19:21:26 +0100 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2020-12-03 12:31:34 +0100 |
commit | 5c24f7dd11a241f6414e3ee6f95f224382ec27ce (patch) | |
tree | 561f5cb1031655fc8c2bd3d30584ea3784ac129c | |
parent | 08f4ae709ca00ec9b4c56d92d3cdd7de4e6effc2 (diff) | |
download | pacman-5c24f7dd11a241f6414e3ee6f95f224382ec27ce.tar.gz pacman-5c24f7dd11a241f6414e3ee6f95f224382ec27ce.tar.xz |
libalpm: set ret in download files
download_files never set ret on failiure, so even when downloading
fails, the transaction goes on to commit and error out.
:: Retrieving packages...
python-packaging-20.4-4-any.pkg.tar.zst failed to download
error: failed retrieving file 'python-packaging-20.4-4-any.pkg.tar.zst' from mirror.oldsql.cc : The requested URL returned error: 404
warning: failed to retrieve some files
(1/1) checking keys in keyring
(1/1) checking package integrity
error: failed to commit transaction (wrong or NULL argument passed)
Errors occurred, no packages were upgraded.
Also make the ret checking more consistent.
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | lib/libalpm/sync.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c index 601f1d69..5d8652a5 100644 --- a/lib/libalpm/sync.c +++ b/lib/libalpm/sync.c @@ -769,7 +769,7 @@ static int download_files(alpm_handle_t *handle) } ret = find_dl_candidates(handle, &files); - if(ret) { + if(ret != 0) { goto finish; } @@ -818,7 +818,9 @@ static int download_files(alpm_handle_t *handle) payloads = alpm_list_add(payloads, payload); } - if(_alpm_download(handle, payloads, cachedir) == -1) { + + ret = _alpm_download(handle, payloads, cachedir); + if(ret != 0) { event.type = ALPM_EVENT_PKG_RETRIEVE_FAILED; EVENT(handle, &event); _alpm_log(handle, ALPM_LOG_WARNING, _("failed to retrieve some files\n")); |