diff options
author | Tavian Barnes <tavianator@tavianator.com> | 2019-02-13 11:12:30 -0500 |
---|---|---|
committer | Tavian Barnes <tavianator@tavianator.com> | 2019-03-06 23:01:19 -0800 |
commit | 0689a4a16f5e80e0c2368f4a68c69ce5f2fdc038 (patch) | |
tree | 60301a8961c72698b44291ecb0473e24c61f923a /eval.c | |
parent | 7fc960a23eab7fce9f5e0666b1a9b3f5eae832af (diff) | |
download | bfs-0689a4a16f5e80e0c2368f4a68c69ce5f2fdc038.tar.xz |
bftw: Work around d_type being wrong for bind mounts on Linux
C.f. https://savannah.gnu.org/bugs/?54913
C.f. https://lkml.org/lkml/2019/2/11/2027
Fixes https://github.com/tavianator/bfs/issues/37
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 21 |
1 files changed, 14 insertions, 7 deletions
@@ -1400,19 +1400,26 @@ int eval_cmdline(const struct cmdline *cmdline) { .ptr = &args, .nopenfd = infer_fdlimit(cmdline), .flags = cmdline->flags, + .mtab = cmdline->mtab, }; for (struct root *root = cmdline->roots; root && !args.quit; root = root->next) { if (cmdline->debug & DEBUG_SEARCH) { fprintf(stderr, - "bftw(\"%s\", { " - ".callback = cmdline_callback, " - ".ptr = &args, " - ".nopenfd = %d, " - ".flags = ", - root->path, - bftw_args.nopenfd); + "bftw(\"%s\", { " + ".callback = cmdline_callback, " + ".ptr = &args, " + ".nopenfd = %d, " + ".flags = ", + root->path, + bftw_args.nopenfd); dump_bftw_flags(bftw_args.flags); + fprintf(stderr, ", .mtab = "); + if (bftw_args.mtab) { + fprintf(stderr, "cmdline->mtab"); + } else { + fprintf(stderr, "NULL"); + } fprintf(stderr, " })\n"); } |