aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThorsten Töpper <atsutane@freethoughts.de>2026-03-01 18:57:38 +0100
committerThorsten Töpper <atsutane@freethoughts.de>2026-03-01 18:57:38 +0100
commit97accf560f501677bc0a5432a85e6f6fd1f16b3b (patch)
tree7fc8ee2a3b55f9d94222635cfcf38c781cc4db21
parent62d0bf1f6209563ce28bd3f3931af401404ca24b (diff)
downloadduplicate_finder-97accf560f501677bc0a5432a85e6f6fd1f16b3b.tar.gz
duplicate_finder-97accf560f501677bc0a5432a85e6f6fd1f16b3b.tar.bz2
main: handle more than a single path
-rw-r--r--src/duplicate_finder.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/duplicate_finder.c b/src/duplicate_finder.c
index a1f9da3..fd8c12d 100644
--- a/src/duplicate_finder.c
+++ b/src/duplicate_finder.c
@@ -151,7 +151,7 @@ int scan(const char *path) {
}
int main(int argc, char **argv) {
- int path_index = 1;
+ int path_index = 1, i = 1, rc = EXIT_SUCCESS;
if (argc > 1) {
path_index = parse_arguments(argc, argv);
@@ -165,7 +165,18 @@ int main(int argc, char **argv) {
if (option_mode == MODE_SCAN) {
- return scan((path_index == argc) ? "." : argv[path_index] );
+ if (path_index == argc) {
+ return scan(".");
+ }
+
+ for (i=path_index; i<argc; i++) {
+ rc = scan(argv[i]);
+ if (rc == EXIT_FAILURE) {
+ LOGERR("Failed during scan of path %d/%d: '%s'\n", i, (argc-path_index), argv[i]);
+ break;
+ }
+ }
+ return rc;
}
if (option_mode == MODE_DUMP) {