Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2011-08-08 12:24:43 -0500
committerDan McGee <dan@archlinux.org>2011-08-08 13:29:45 -0500
commit07a1292721c62f44d89a9fe6a0b093b5e6865b8a (patch)
tree899f60128caa28a7cc5886fc205f0f53768e3d5e /src
parentf10aea73e462f05d31de7b55667f58300fb89fa2 (diff)
Check return value of rename() calls
We did a good job checking this in add.c, but not necessarily anywhere else. Fix this up by adding checks into dload.c, remove.c, and conf.c in the frontend. Also add loggers where appropriate and make the message syntax more consistent. Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'src')
-rw-r--r--src/pacman/conf.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/pacman/conf.c b/src/pacman/conf.c
index a5804066..29e835ce 100644
--- a/src/pacman/conf.c
+++ b/src/pacman/conf.c
@@ -184,10 +184,14 @@ static int download_with_xfercommand(const char *url, const char *localpath,
ret = -1;
} else {
/* download was successful */
+ ret = 0;
if(usepart) {
- rename(tempfile, destfile);
+ if(rename(tempfile, destfile)) {
+ pm_printf(ALPM_LOG_ERROR, _("could not rename %s to %s (%s)\n"),
+ tempfile, destfile, strerror(errno));
+ ret = -1;
+ }
}
- ret = 0;
}
cleanup: