summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Reisner <dreisner@archlinux.org>2011-11-13 18:19:28 -0500
committerDan McGee <dan@archlinux.org>2011-12-12 12:56:48 -0600
commit8c8f04371745dad0bafcea14b38b4570e0b24a31 (patch)
treedae567a9f9b2e92e053d94924aaa50f7cedee09c
parent3d4656c0204956847a62c95b0f28747d7a0c2c05 (diff)
downloadpacman-8c8f04371745dad0bafcea14b38b4570e0b24a31.tar.xz
lib/conflict: save strlen call by reusing snprintf return
The return should probably be checked to ensure its not longer than PATH_MAX, but I have no idea what the correct behavior is when that happens. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--lib/libalpm/conflict.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libalpm/conflict.c b/lib/libalpm/conflict.c
index 486f4bf3..d89fc532 100644
--- a/lib/libalpm/conflict.c
+++ b/lib/libalpm/conflict.c
@@ -465,8 +465,9 @@ alpm_list_t *_alpm_db_find_fileconflicts(alpm_handle_t *handle,
int resolved_conflict = 0;
struct stat lsbuf;
char path[PATH_MAX];
+ size_t pathlen;
- snprintf(path, PATH_MAX, "%s%s", handle->root, filestr);
+ pathlen = snprintf(path, PATH_MAX, "%s%s", handle->root, filestr);
/* stat the file - if it exists, do some checks */
if(_alpm_lstat(path, &lsbuf) != 0) {
@@ -490,7 +491,7 @@ alpm_list_t *_alpm_db_find_fileconflicts(alpm_handle_t *handle,
/* if we made it to here, we want all subsequent path comparisons to
* not include the trailing slash. This allows things like file ->
* directory replacements. */
- path[strlen(path) - 1] = '\0';
+ path[pathlen - 1] = '\0';
}
relative_path = path + strlen(handle->root);