<http://mail.gnu.org/archive/html/bug-coreutils/2003-09/msg00008.html>.
(sort_buffer_size): Omit SIZE_BOUND arg. Compute the
size_bound ourselves. if an input file is a pipe and the user
specified a size, use that size instead of trying to guess the
pipe size. This has the beneficial side effect of avoiding the
overhead of default_sort_size in that case. All callers changed.
(sort): Remove static var size; now done by sort_buffer_size.
(struct linebuffer): Change nbytes and nlines
from unsigned int to size_t. unsigned int is safe (after the
2003-09-03 patch) but size_t is cleaner.
Standardize on BUFSIZ as opposed to other macro names and values.
(BUFSIZE): Remove. All uses changed to BUFSIZ.
(struct linebuffer, struct charbuffer): Change nbytes and nlines from
unsigned int to size_t. unsigned int is safe (after the 2003-09-03 patch)
but size_t is cleaner.
(pipe_bytes): Likewise for local variable 'i', which was 'int'.
Standardize on BUFSIZ as opposed to other macro names and values.
(BUFSIZ) [!defined BUFSIZ]: Remove. stdio.h has always defined it,
and other code already assumes it's defined.
endpoint requiring the largest width is negative and smaller than
the other endpoint.
(get_width_format): Include `-' in the set of bytes
allowed in a `simple' number (no decimal point, no exponent).
Similar fixes for many comments.
(TAB_DEFAULT): New constant, so that we can support NUL as
the field separator.
(tab): Now int, not char. Initialize to TAB_DEFAULT.
(specify_sort_size): If multiple sizes are specified, use the largest.
(begfield, limfield): Support NUL tab char.
(set_ordering): Do not let -i override -d.
(main): Report an error if incompatible -o or -t options are given.
Report an error for "-t ''". Allow "-t '\0'" to specify a NUL tab.
message digest modes. Currently works with BSD's MD5 and SHA1
formats since these are the two algorithms presently used in
coreutils. Updated comments to reflect this change.
(bsd_split_3): Updated comments.
on a partition (e.g. VFAT) on which distinct names may refer to the
same directory entry (often due to variations in case), and when the
link count for the file is 1, mv no longer unlinks the file.
FIXME: this is a band-aid fix. If the file happens to have a link
count of 2 or greater, mv will still unlink it.
(same_file_ok): Invoke same_name (which might still
return false for names that refer to the same directory entry)
only if the link count is 2 or more.
race condition bug. The bug would be triggered when tailing a file
with file pointer not at beginning of file, and where the file was
truncated to have a length of less than the initial offset at just
the right moment (between the two lseek calls in this function).
`tail -n0 -f FILE' and `tail -c0 -f FILE' doing what amounted to a
busy-wait rather than sleeping between iterations. The bug manifests
itself only when tailing regular files that are initially nonempty.
(tail_bytes): Set *read_pos to new file offset after
each xlseek call.
(tail_lines): Likewise, after lseek calls.
E.g., this would not terminate: printf 'a\tb' | fold -w2 -s
(fold_file): Move contents of `else'-block
out of conditional so it's used also for --spaces (-s).
system.h so the types from time.h and sys/time.h are available.
It appears that this is necessary for OpenBSD, NetBSD, and
Darwin 6.5 (MacOS 10.2.5). Reported by Nelson Beebe.