logo

utils-std

Collection of commonly available Unix tools git clone https://anongit.hacktivis.me/git/utils-std.git/
commit: a42f65fa382c6d619664633e194d3fe3b420d8d0
parent 51f38e2cf908ecafc84f4bbbc95def2cd3e71cee
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Sat, 12 Apr 2025 20:13:14 +0200

cmd/realpath: (readlink) fix -n handling when -f is passed

Diffstat:

Mcmd/realpath.c2+-
Mtest-cmd/readlink.sh4+++-
2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/cmd/realpath.c b/cmd/realpath.c @@ -207,7 +207,7 @@ main_readlink(int argc, char *argv[]) if(canonicalize) { if(print_realpath(path) != 0) return 1; - if(i != argc) printf("%c", sep); + if(i != argc - offset_sep) printf("%c", sep); continue; } diff --git a/test-cmd/readlink.sh b/test-cmd/readlink.sh @@ -3,7 +3,7 @@ # SPDX-License-Identifier: MPL-2.0 target="$(dirname "$0")/../cmd/readlink" -plans=12 +plans=14 . "$(dirname "$0")/tap.sh" t --exit=1 noargs '' 'readlink: error: Expected one file as argument, got 0 @@ -25,9 +25,11 @@ t --exit=1 enoent /var/empty/e/no/ent "readlink: error: Failed reading symbolic t_cmd touch:regular '' touch regular t --exit=1 readlink:regular regular "readlink: error: Failed reading symbolic link of 'regular': Invalid argument " +t readlink_f:regular '-n -f regular' "$PWD/regular" t_cmd rm:regular '' rm regular t_cmd mkdir:dir '' mkdir dir t --exit=1 readlink:dir dir "readlink: error: Failed reading symbolic link of 'dir': Invalid argument " +t readlink_f:dir '-n -f dir' "$PWD/dir" t_cmd rm:dir '' rm -r dir