From: Karel Zak Date: Thu, 17 Feb 2022 12:59:08 +0000 (+0100) Subject: hardlink: make it possible to compare paths X-Git-Tag: v2.38-rc2~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a66fbaaf30e8d311c02f7602c9cf46dd7358839a;p=thirdparty%2Futil-linux.git hardlink: make it possible to compare paths Addresses: https://github.com/util-linux/util-linux/issues/1602 Signed-off-by: Karel Zak --- diff --git a/misc-utils/hardlink.c b/misc-utils/hardlink.c index ebb0aba722..9320486227 100644 --- a/misc-utils/hardlink.c +++ b/misc-utils/hardlink.c @@ -1363,8 +1363,15 @@ int main(int argc, char *argv[]) jlog(JLOG_VERBOSE2, _("Scanning [device/inode/links]:")); for (; optind < argc; optind++) { - if (nftw(argv[optind], inserter, 20, FTW_PHYS) == -1) - warn(_("cannot process %s"), argv[optind]); + char *path = realpath(argv[optind], NULL); + + if (!path) { + warn(_("cannot get realpath: %s"), argv[optind]); + continue; + } + if (nftw(path, inserter, 20, FTW_PHYS) == -1) + warn(_("cannot process %s"), path); + free(path); } twalk(files, visitor);