[Bug 264846] xargs should terminate if line replacement cannot be constructed
Date: Thu, 23 Jun 2022 12:13:59 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264846 Bug ID: 264846 Summary: xargs should terminate if line replacement cannot be constructed Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: misc Assignee: bugs@FreeBSD.org Reporter: thj@FreeBSD.org Flags: exp-run? Created attachment 234885 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=234885&action=edit cause xargs to error if line cannot be constructed https://reviews.freebsd.org/D35574 If the line with replacement cannot be constructed xargs should terminate as documented in the man page: -I replstr Execute utility for each input line, replacing one or more occurrences of replstr in up to replacements (or 5 if no -R flag is specified) arguments to utility with the entire line of input. The resulting arguments, after replacement is done, will not be allowed to grow beyond replsize (or 255 if no -S flag is specified) bytes; this is implemented by concatenating as much of the argument containing replstr as possible, to the constructed arguments to utility, up to replsize bytes. The size limit does not apply to arguments to utility which do not contain replstr, and furthermore, no replacement will be done on utility itself. Implies -x. Currently, xargs continues and lines that cannot accommodate the replacement get as much of the replstr as will fit in the string. Instead xargs should error, include an error when we do. We encounter this error, but gnu/xargs doesn't because they have a much larger limit for created outputs (~10000 lines). -- You are receiving this mail because: You are the assignee for the bug.