summaryrefslogtreecommitdiffstats
path: root/lib/backup-files.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/backup-files.c')
-rw-r--r--lib/backup-files.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/backup-files.c b/lib/backup-files.c
index 268fb49..4d6d137 100644
--- a/lib/backup-files.c
+++ b/lib/backup-files.c
@@ -471,7 +471,7 @@ walk(const char *path, const struct stat *st)
int
main(int argc, char *argv[])
{
- int opt, status=0;
+ int opt, status = 0;
progname = argv[0];
@@ -557,15 +557,17 @@ main(int argc, char *argv[])
}
for (; optind < argc; optind++) {
if (strcmp(argv[optind], "-") == 0) {
+ struct stat st;
char *dir = strdup(opt_prefix), *d = strrchr(dir, '/');
if (d)
*d = '\0';
else
d = ".";
- status = foreachdir(dir, walk);
- if (status == -1)
- perror(dir);
-
+ if (stat(dir, &st) == 0) {
+ status = foreachdir(dir, walk);
+ if (status == -1)
+ perror(dir);
+ }
free(dir);
} else
status = process_file(argv[optind]);