Currently when caling alpm_trans_commit, if fetching a package restults
in a 404 (or other non 400 response code), the function returns -1 but
errno is never set.
Thish patch sets errno to ALPM_ERR_RETRIEVE.
diff --git a/lib/libalpm/dload.c b/lib/libalpm/dload.c
index 05813c40..e5696bb0 100644
--- a/lib/libalpm/dload.c
+++ b/lib/libalpm/dload.c
@@ -454,6 +454,7 @@ static int curl_download_internal(struct dload_payload
*payload,
if(payload->respcode >= 400) {
payload->unlink_on_fail = 1;
if(!payload->errors_ok) {
+ handle->pm_errno = ALPM_ERR_RETRIEVE;
/* non-translated message is same as
libcurl */
snprintf(error_buffer,
sizeof(error_buffer),
"The requested URL
returned error: %ld", payload->respcode);
--
2.21.0