That's true, thanks. I sent this patch because I mistyped a path in -Qo and it only printed "file %mistyped_path is not owned by any package", without warning me that the file did not exist. So if this check is put somewhere after the file database query, it will warn about mistyped paths to nonexistent files, right? On Tue, Jun 16, 2020, 21:26 Eli Schwartz <eschwartz@archlinux.org> wrote:
On 6/16/20 8:05 PM, Pedro Victor wrote:
From: Pedro Victor <pedrocga1@gmail.com>
--- src/pacman/query.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/src/pacman/query.c b/src/pacman/query.c index 513ddb7a..784936b9 100644 --- a/src/pacman/query.c +++ b/src/pacman/query.c @@ -209,6 +209,11 @@ static int query_fileowner(alpm_list_t *targets) strcat(rpath + rlen, "/"); }
+ if (access(rel_path, F_OK) == -1) { + pm_printf(ALPM_LOG_ERROR, _("File does not exist: %s\n"), rel_path); + goto targcleanup; + } +
Note that the current behavior is, if a file has been deleted and a warning is reported by 'pacman -Qkk', pacman -Qo /path/to/file will still report which package is *supposed* to it.
for(i = packages; i && (!found || is_dir); i =
alpm_list_next(i)) {
if(alpm_filelist_contains(alpm_pkg_get_files(i->data), rel_path)) {
print_query_fileowner(rpath, i->data);
-- Eli Schwartz Bug Wrangler and Trusted User