From 8c8f04371745dad0bafcea14b38b4570e0b24a31 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Sun, 13 Nov 2011 18:19:28 -0500 Subject: 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 Signed-off-by: Dan McGee --- lib/libalpm/conflict.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/libalpm/conflict.c') 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); -- cgit v1.2.3-24-g4f1b