History log of /freebsd-9.3-release/usr.bin/uniq/uniq.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 216370 11-Dec-2010 joel

Remove the advertising clause from UCB copyrighted files in usr.bin. This
is in accordance with the information provided at
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change

Also add $FreeBSD$ to a few files to keep svn happy.

Discussed with: imp, rwatson


# 204927 09-Mar-2010 ache

Add SIZE_MAX overflow check


# 204876 08-Mar-2010 ache

1) Reimplement (differently) unlimited line length restricted in prev.
commit.

2) Honor missing the very last \n (if absent) on output.


# 204811 06-Mar-2010 ache

Remove vestiges of old %-format which prevents build on amd64


# 204803 06-Mar-2010 ache

1) Rewrite input processing to not exit with error on the first EILSEQ found
in the input data but fallback to "binary equal" check instead.

POSIX says: "The input file shall be a text file", nothing more,
so the text file with illegal sequence is valid input.
BTW, GNU sort does not fails on EILSEQ too.

2) Speedup input processing a bit in complex cases like skipping fields,
chars or ignore case.

3) Enforce the implied LINE_MAX limit (from POSIX definition of "text file"
and POSIX uniq(1) description).


# 200633 17-Dec-2009 jh

Sync getline() with comm(1):

- Prevent overflowing of the buffer length variable in getline() by
limiting its maximum value.
- Exit if reallocf(3) fails in getline(). Failure was silently
considered as end-of-file.

Reviewed by: ghelmer
Approved by: trasz (mentor)


# 176119 08-Feb-2008 ghelmer

Fix truncation of lines at LINE_MAX characters by dynamically
extending line buffers.

PR: bin/76578


# 169639 16-May-2007 jmallett

Fix typo.


# 169638 16-May-2007 jmallett

o) Correct for missing whitespace.
o) We don't need to check if ifp == stdin to give the filename, since we already
know that ifn will be "stdin" if it is.


# 169636 16-May-2007 jmallett

Fix confusing misindentation of a closing-brace. (It goes with the switch, not
with the while.)


# 135214 14-Sep-2004 tjr

Remove a bogus check that caused empty lines not to be counted when the
-c option was given.

Noticed by: sf


# 131502 02-Jul-2004 tjr

Add support for multibyte characters.


# 102944 04-Sep-2002 dwmalone

ANSIify function definitions.
Add some constness to avoid some warnings.
Remove use register keyword.
Deal with missing/unneeded extern/prototypes.
Some minor type changes/casts to avoid warnings.

Reviewed by: md5


# 99433 05-Jul-2002 tjr

Use err instead of errx when malloc fails. "malloc" is not a helpful
error message.


# 98547 21-Jun-2002 tjr

Skip fields in the manner required by POSIX, and the way V7 did it.

MFC after: 1 week


# 98545 21-Jun-2002 tjr

Newline characters should not participate in line comparisons. Only apparent
when -s is used or the last line of the file is missing a newline.
Noticed by the textutils test suite.

MFC after: 1 week


# 97929 06-Jun-2002 ache

Back out rev 1.19 because

1) It breaks uniq for real life languages when "substitute" directive used in
the collating table.
2) It breaks uniq usage in tool chain with other localized utilities which
use collate.
3) To follow LC_COLLATE it is directly allowed for uniq
by POSIX P1003.1 Draft7 (7.3.2). It means that rev 1.19 gains no additional
POSIX conformance.


# 97906 06-Jun-2002 tjr

Compare lines with strcmp(), not strcoll(). We are interested only in
equality, not ordering.


# 97905 06-Jun-2002 tjr

Sync usage() with manual page synopsis.


# 97529 29-May-2002 tjr

Accept an input file name of "-" to mean standard input, as required by
P1003.2.


# 97528 29-May-2002 tjr

Fields should be separated by <blank>s, not <space>s according to P1003.2.


# 97527 29-May-2002 tjr

Don't bother trying to handle "-" arguments ourselves, getopt(3) already
does this for us.


# 95030 19-Apr-2002 ache

Use LC_ALL to pick collate

Noticed by: tjr


# 92922 21-Mar-2002 imp

remove __P


# 87303 03-Dec-2001 dwmalone

Warns cleanups. Add FreeBSD ID to Makefile.


# 54401 10-Dec-1999 ache

fix fatal typo


# 52616 29-Oct-1999 ache

toupper -> tolower to match changed behaviour of new grep case fold


# 52459 24-Oct-1999 ache

Cosmetique: use standard prototypes scheme
Back out prev. change: toupper is more compatible with sort -f


# 52457 24-Oct-1999 ache

toupper->tolower to match what strcasecmp does


# 52455 24-Oct-1999 ache

Use strcoll to provide the same results as sort and comm
Use LINE_MAX for max line size (as comm does)


# 50477 27-Aug-1999 peter

$Id$ -> $FreeBSD$


# 34323 08-Mar-1998 ache

Localize it


# 29207 07-Sep-1997 joerg

Teach comm(1) and uniq(1) about an option for case-insensitive work.

PR: 3042
Submitted by: graphix@iastate.edu (Kent Vander Velden)


# 28503 21-Aug-1997 charnier

Use err(3) instead of local redefinition.


# 24360 29-Mar-1997 imp

compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.


# 23691 11-Mar-1997 peter

This commit was generated by cvs2svn to compensate for changes in r23690,
which included commits to RCS files with non-trunk default branches.


# 23690 11-Mar-1997 peter

Import some parts of CSRG 4.4BSD-Lite2 usr.bin sources to fix tree build.


# 1590 27-May-1994 rgrimes

BSD 4.4 Lite Usr.bin Sources