When the list of headers do not fit into the command line, xargs splits it into several lists and then passes them to grep. If no headers from a list match the grep pattern, grep exits with a non-zero code that causes xargs to exit with a non-zero code, too.
* maint/ioctls_sym.sh: Use find's -exec instead of xargs; Ignore it's exit code. --- maint/ioctls_sym.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/maint/ioctls_sym.sh b/maint/ioctls_sym.sh index d9551b7..1d50850 100755 --- a/maint/ioctls_sym.sh +++ b/maint/ioctls_sym.sh @@ -75,9 +75,10 @@ tmpdir="$(mktemp -dt "$me.XXXXXX")" # list interesting files in $inc_dir. cd "$inc_dir" inc_dir="$(pwd -P)" -find . -type f -name '*.h' -print0 | - xargs -r0 grep -l "$r_value" -- > "$tmpdir"/headers1.list || - exit 0 +find . -type f -name '*.h' -exec grep -l "$r_value" -- '{}' + \ + > "$tmpdir"/headers1.list ||: +[ -s "$tmpdir"/headers1.list ] || exit 0 + cd - > /dev/null sed 's|^\./\(uapi/\)\?||' < "$tmpdir"/headers1.list > "$tmpdir"/headers.list LC_COLLATE=C sort -u -o "$tmpdir"/headers.list "$tmpdir"/headers.list -- glebfm ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel