Instead, cut now fails and emits an appropriate diagnostic.
[This bug was present in "the beginning".]
+ cut now handles overlapping to-EOL ranges properly. Before, it would
+ interpret "-b2-,3-" like "-b3-". Now it's treated like "-b2-".
+ [This bug was present in "the beginning".]
+
install -m M SOURCE DEST no longer has a race condition where DEST's
permissions are temporarily derived from SOURCE instead of from M.
In any case, 'initial' contains the start of the range. */
if (!rhs_specified)
{
- /* 'n-'. From 'initial' to end of line. */
- eol_range_start = initial;
+ /* 'n-'. From 'initial' to end of line. If we've already
+ seen an M- range, ignore subsequent N- unless N < M. */
+ if (eol_range_start == 0 || initial < eol_range_start)
+ eol_range_start = initial;
field_found = true;
}
else
['big-unbounded-b', '--output-d=:', '-b1234567890-', {IN=>''}, {OUT=>''}],
['big-unbounded-c', '--output-d=:', '-c1234567890-', {IN=>''}, {OUT=>''}],
['big-unbounded-f', '--output-d=:', '-f1234567890-', {IN=>''}, {OUT=>''}],
+
+ ['overlapping-unbounded-1', '-b3-,2-', {IN=>"1234\n"}, {OUT=>"234\n"}],
+ ['overlapping-unbounded-2', '-b2-,3-', {IN=>"1234\n"}, {OUT=>"234\n"}],
);
if ($mb_locale ne 'C')