diff options
author | Allan McRae <allan@archlinux.org> | 2015-10-17 11:50:05 +0200 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2015-10-18 03:16:44 +0200 |
commit | 002acb467425755ea6203cce8c77733140489c18 (patch) | |
tree | 894f39c10649777214c8e5d923df6b7b9797e8b4 | |
parent | cbb7e180c755d1e84983b583518626125781da8a (diff) | |
download | pacman-002acb467425755ea6203cce8c77733140489c18.tar.gz pacman-002acb467425755ea6203cce8c77733140489c18.tar.xz |
Do not print any root prefix in files database operations
Combining with the --root flag and outputing a consistent root prefix leads
to many situations that make no sense. Instead, do not print any prefix for
any --files operations.
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | src/pacman/files.c | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/src/pacman/files.c b/src/pacman/files.c index ceec3429..31ce9e07 100644 --- a/src/pacman/files.c +++ b/src/pacman/files.c @@ -61,7 +61,7 @@ static int files_fileowner(alpm_list_t *syncs, alpm_list_t *targets) { if(alpm_filelist_contains(files, f)) { if(!config->quiet) { - printf(_("%s is owned by %s/%s %s\n"), filename, + printf(_("%s is owned by %s/%s %s\n"), f, alpm_db_get_name(repo), alpm_pkg_get_name(pkg), alpm_pkg_get_version(pkg)); } else { @@ -166,6 +166,28 @@ notfound: return 0; } +static void dump_file_list(alpm_pkg_t *pkg) { + const char *pkgname; + alpm_filelist_t *pkgfiles; + size_t i; + + pkgname = alpm_pkg_get_name(pkg); + pkgfiles = alpm_pkg_get_files(pkg); + + for(i = 0; i < pkgfiles->count; i++) { + const alpm_file_t *file = pkgfiles->files + i; + /* Regular: '<pkgname> <filepath>\n' + * Quiet : '<filepath>\n' + */ + if(!config->quiet) { + printf("%s%s%s ", config->colstr.title, pkgname, config->colstr.nocolor); + } + printf("%s\n", file->name); + } + + fflush(stdout); +} + static int files_list(alpm_list_t *syncs, alpm_list_t *targets) { alpm_list_t *i, *j; int ret = 0, found = 0; @@ -200,7 +222,7 @@ static int files_list(alpm_list_t *syncs, alpm_list_t *targets) { if((pkg = alpm_db_get_pkg(db, targ)) != NULL) { found = 1; - dump_pkg_files(pkg, config->quiet); + dump_file_list(pkg); break; } } @@ -218,7 +240,7 @@ static int files_list(alpm_list_t *syncs, alpm_list_t *targets) { for(j = alpm_db_get_pkgcache(db); j; j = alpm_list_next(j)) { alpm_pkg_t *pkg = j->data; - dump_pkg_files(pkg, config->quiet); + dump_file_list(pkg); } } } |