aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFerass El Hafidi <vitali64pmemail@protonmail.com>2023-04-09 18:37:18 +0200
committerFerass El Hafidi <vitali64pmemail@protonmail.com>2023-04-09 18:37:18 +0200
commitc939b671d0cd8dc0b9f7194dd0c81904bc0220f7 (patch)
treeb230c33adcdbf96820a7f044b7959cee5754878e
parent4a373ed9a6d203f68eb184d447130c013ad96524 (diff)
downloadfases-c939b671d0cd8dc0b9f7194dd0c81904bc0220f7.tar.gz
fases-c939b671d0cd8dc0b9f7194dd0c81904bc0220f7.zip
core/ln: get rid of useless for loop
Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
-rw-r--r--core/ln.c28
1 files changed, 13 insertions, 15 deletions
diff --git a/core/ln.c b/core/ln.c
index 301ba7d..b8915b8 100644
--- a/core/ln.c
+++ b/core/ln.c
@@ -27,21 +27,19 @@ int main(int argc, char *const argv[]) {
}
param[argument] = argument;
} argc -= optind; argv += optind;
- for (int i = 0; i < (argc - 1); i++) {
- if (param['f']) remove(argv[argc - 1]);
- if (errno && errno != ENOENT) return errprint(argv0, argv[i], errno);
- errno = 0; /* Not reached if errno == ENOENT (no such file) */
- if (param['s']) symlink(argv[i], argv[argc - 1]);
- /* The -P option is the default behavior (at least on musl),
- * so no if statement.
- */
- else if (param['L']) {
- readlink(argv[i], buffer, strlen(buffer)); /* Read the link */
- if (errno) return errprint(argv0, argv[i], errno);
- link(buffer, argv[argc - 1]);
- }
- else link(argv[i], argv[argc - 1]);
- if (errno) return errprint(argv0, argv[i], errno);
+ if (param['f']) remove(argv[1]);
+ if (errno && errno != ENOENT) return errprint(argv0, argv[0], errno);
+ errno = 0; /* Not reached if errno == ENOENT (no such file) */
+ if (param['s']) symlink(argv[0], argv[1]);
+ /* The -P option is the default behavior (at least on musl),
+ * so no if statement.
+ */
+ else if (param['L']) {
+ readlink(argv[0], buffer, strlen(buffer)); /* Read the link */
+ if (errno) return errprint(argv0, argv[0], errno);
+ link(buffer, argv[1]);
}
+ else link(argv[0], argv[1]);
+ if (errno) return errprint(argv0, argv[1], errno);
return 0;
}