freebsd-nq/usr.bin
Yaroslav Tykhiy 6b8ef68111 This trivial change should fix at least 3 similar bugs. All of
them are related to the `c' function's need to know if we are at
the actual end of the address range.  (It must print the text not
earlier than the whole pattern space was deleted.)  It appears the
only sed function with this requirement.

There is `lastaddr' set by applies(), which is to notify the `c'
function, but it can't always help because it's false when we are
hitting the end of file early.  There is also a bug in applies()
due to which `lastaddr' isn't set to true on degenerate ranges such
as `$,$' or `N,$' if N appears the last line number.

Handling early EOF condition in applies() could look more logical,
but it would effectively revert sed to the unreasonable behaviour
rev. 1.26 of main.c fought against, as it would require lastline()
be called for each line within each address range.  So it's better
to call lastline() only if needed by the `c' function.

Together with this change to sed go regression tests for the bugs
fixed (c1-c3).  A basic test of `c' (c0) is also added as it helped
me to spot my own error.

Discussed with:		dds
Tested by:		the regression tests
MFC after:		1 week
2007-04-01 13:25:03 +00:00
..
alias Use the "builtin" shell function to make sure that the requested 2005-10-24 22:32:19 +00:00
apply It's `apply echo *'' that is similar to ls -1'', not `apply echo a*''. 2006-12-13 08:13:14 +00:00
asa Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
at While revision 1.26 fixed the code to really subtract 3600 due to 2005-08-18 08:18:02 +00:00
atm Fix build in the !NOATM case by using the begemot library in place of 2004-09-24 22:10:34 +00:00
awk Fix a bug converting a variable from the numeric type to a string. 2006-10-25 21:23:20 +00:00
banner o Check that -w width is not above maximum. Use DWIDTH instead of 2006-11-22 21:05:17 +00:00
basename Cross-reference basename(3) and dirname(3). 2006-03-16 17:21:52 +00:00
biff Fix markup. 2006-12-28 04:58:38 +00:00
bluetooth Add "server mode" to rfcomm_sppd(1). 2007-01-25 20:54:59 +00:00
brandelf Fix markup. 2007-03-09 14:36:18 +00:00
bsdiff Portability fix for non-POSIX operating systems: Open files in binary mode. 2006-12-05 20:22:14 +00:00
bzip2 Update for bzip2 1.0.4 import. 2007-03-28 07:48:03 +00:00
bzip2recover Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
c89 Reduce diffs with c99(1). 2007-03-10 07:10:01 +00:00
c99 Bump the original revision of c89(1). 2007-03-10 07:11:20 +00:00
calendar Add myself. 2007-03-11 06:44:37 +00:00
cap_mkdb Add endianness support to cap_mkdb(1), useful for cross builds. 2005-02-22 23:29:54 +00:00
catman Prepare for MACHINE and hw.machine switching to "pc98" on FreeBSD/pc98. 2005-12-05 14:22:12 +00:00
chat
checknr Document input line length limit. 2005-01-25 22:32:48 +00:00
chkey Reimplementation of world/kernel build options. For details, see: 2006-03-17 18:54:44 +00:00
chpass Fix bug introduced in rev 1.23: 2006-09-25 15:06:24 +00:00
cksum Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
cmp Refine markup and add the EXIT STATUS section where appropriate. 2006-12-19 10:34:14 +00:00
col The variables i and tot don't need to be static. 2006-07-18 07:16:25 +00:00
colcrt Expand *n't contractions. 2005-02-13 22:25:33 +00:00
colldef Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
colrm Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
column Fix the fix in rev. 1.15 so that we jump to the next column 2006-12-15 17:47:25 +00:00
comm Document input line length limit. 2005-01-25 22:32:48 +00:00
compile_et Style: move .PATH to where it belongs. 2005-10-14 15:50:22 +00:00
compress -mdoc sweep. 2005-11-18 10:36:29 +00:00
csplit Document input line length limit. 2005-01-25 22:32:48 +00:00
csup Update make glue for csup-snap-20060313. 2006-03-14 03:53:50 +00:00
ctags cleanup code: remove unnecessary and useless void cast 2007-02-04 20:07:07 +00:00
cut - Adopt the short description from POSIX as it better matches the 2007-02-28 10:13:32 +00:00
dig Disable thread support in BIND. It appears to reduce performance rather 2005-07-25 14:44:11 +00:00
dirname Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
du Markup fixes. 2006-09-29 15:20:48 +00:00
ee Correct insecure temporary file usage in texindex. [06:01] 2006-01-11 08:02:16 +00:00
elf2aout Because optarg and optind are defined in unistd.h, 2006-04-21 09:39:51 +00:00
elfdump s/DT_IA64_PLT_RESERVE/DT_IA_64_PLT_RESERVE/ 2006-01-28 17:58:22 +00:00
enigma Markup nits. 2006-12-24 19:55:38 +00:00
env Fix minor memory leak when expanding ${variable}s 2005-07-18 22:18:16 +00:00
expand Document that unexpand(1)'s -a and -t options are exclusive. 2006-10-13 16:22:25 +00:00
false
fetch Try to preserve ownership and permissions when replacing an existing file. 2006-11-10 22:05:41 +00:00
file Markup fixes. 2006-09-29 15:20:48 +00:00
file2c Add '-s' option and update the manual page. With this option, it prints 2007-03-23 00:00:22 +00:00
find Check in some insignificant fixes obtained as a result of 2007-02-28 10:19:25 +00:00
finger Reduce number of spaces for full name by four, and reduce padding 2006-03-04 16:13:16 +00:00
fmt Remove unnecessary SRCS= where could be guessed directly by our 2005-01-27 14:52:47 +00:00
fold Mention what underlining is meant here. 2006-12-15 11:23:59 +00:00
from Improve markup. 2006-12-18 15:36:31 +00:00
fstat KERN_PROC_ALL produces a kinfo_proc for each thread in a process, which 2007-03-09 16:21:40 +00:00
fsync Correct some style nits that I have mistakenly submitted as 2005-01-26 15:17:25 +00:00
ftp Obey MK_INET6_SUPPORT. 2006-07-27 14:20:14 +00:00
gcore Make gcore(1) 64 bit safe. It was trying to parse the /proc/*/map file 2006-03-25 01:14:20 +00:00
gencat Our bsd.*.mk only supports 6 WARNS levels and we should not use higher values 2005-06-30 11:56:31 +00:00
getconf o confstr(3) returns 0 on error. Check the return value accordingly. 2006-12-06 12:00:26 +00:00
getent cleanup code: remove superfluous comma at end of enumeration 2007-02-04 20:52:57 +00:00
getopt Expand *n't contractions. 2005-02-13 22:25:33 +00:00
gprof Remove alpha-specific stuff. 2006-08-23 12:12:56 +00:00
gzip Mention a limitation that was inherted from RFC1952, making 2007-03-16 03:50:53 +00:00
head Fix build on architectures where off_t is signed by casting to uintmax_t 2007-01-11 20:23:01 +00:00
hesinfo Fixed the misplaced $FreeBSD$. 2005-02-09 18:07:17 +00:00
hexdump Document the -d option. 2006-12-24 14:23:35 +00:00
host Disable thread support in BIND. It appears to reduce performance rather 2005-07-25 14:44:11 +00:00
id Fix SUSv3 compliance: Use a single comma instead of comma and space to separate 2006-12-29 12:28:34 +00:00
indent initialize variable (WARNS=6) 2006-09-13 05:06:12 +00:00
ipcrm Spell "id" as "ID". 2007-03-09 12:45:00 +00:00
ipcs o Fix typo in a comment. 2006-05-15 08:20:38 +00:00
join Improve markup and do some minor wordsmithing. 2006-12-21 10:59:48 +00:00
jot Use explicit braces to avoid ambiguous else. 2006-12-09 15:23:20 +00:00
kdump Add various utrace's for use with ktrace to the ELF runtime linker. To 2007-01-09 17:50:05 +00:00
keylogin
keylogout
killall Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
ktrace Allow the -c -f file options to actually execute. 2007-02-13 00:22:29 +00:00
ktrdump Skip format flags, when parsing ktr_desc. 2006-01-12 22:32:07 +00:00
lam Document that jot(1), rs(1), and lam(1) first appeared in 4.2BSD. 2006-10-20 04:31:01 +00:00
last Expand *n't contractions. 2005-02-13 22:25:33 +00:00
lastcomm Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
ldd
leave
less In rev. 1.2 we have introduced a fallback handler for files with unknown 2006-08-30 08:20:34 +00:00
lessecho Hook lessecho(1) to build. 2006-08-20 15:52:17 +00:00
lesskey
lex Convert NO_PROFILE and NO_LIB32 to new style. 2006-03-18 21:37:05 +00:00
limits Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
locale Xref setlocale(3), bump document date. 2005-11-01 19:36:17 +00:00
locate Markup fixes. 2006-09-29 15:20:48 +00:00
lock Expand *n't contractions. 2005-02-13 22:25:33 +00:00
lockf Markup cosmetics. 2006-12-20 16:57:13 +00:00
logger Markup fixes. 2006-09-29 15:20:48 +00:00
login Teach login(1) about the make.conf NO_AUDIT variable. This allows us to 2006-12-13 06:13:32 +00:00
logins
logname Say "utility", not "function". 2006-12-26 10:37:37 +00:00
look Remove break after return. 2006-07-18 10:19:46 +00:00
lorder Document the NM environment variable. 2006-10-25 09:40:07 +00:00
lsvfs spell "file system" correctly 2005-01-24 20:06:16 +00:00
m4 Let bsd.prog.mk set SRCS and MAN to their default values. 2005-01-28 16:08:11 +00:00
mail o Really commit typo fixes to HEAD. 2007-03-25 18:37:59 +00:00
make Better English. 2007-03-08 14:05:45 +00:00
makewhatis Prepare for MACHINE and hw.machine switching to "pc98" on FreeBSD/pc98. 2005-12-05 14:22:12 +00:00
mesg Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
minigzip
ministat Improve input parsing: 2006-08-28 08:27:02 +00:00
mkdep Sort sections. 2005-01-18 13:43:56 +00:00
mkfifo Fix markup. 2006-12-15 14:14:17 +00:00
mklocale getopt(3) returns -1, not EOF. 2007-02-06 08:48:28 +00:00
mkstr More markup fixes. 2007-03-04 08:24:13 +00:00
mktemp Markup fixes. 2006-09-29 15:20:48 +00:00
mkuzip Support character device as input file. 2007-03-06 17:04:15 +00:00
msgs Cleanup: 2005-01-17 17:45:38 +00:00
mt -mdoc sweep. 2005-11-18 10:36:29 +00:00
nc Fix bugs in the previous commit. 2005-02-07 08:44:34 +00:00
ncal Document incorrect handling of multibyte characters. 2005-10-23 01:37:25 +00:00
ncplist getopt(3) returns -1, not EOF when out of args. 2007-02-05 07:35:23 +00:00
ncplogin getopt(3) returns -1, not EOF when out of args. 2007-02-05 07:35:23 +00:00
netstat Fixing NO_INET6 build as addr2ascii() has been nuked in previous commit. 2007-03-02 05:23:39 +00:00
newgrp Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
newkey Reimplementation of world/kernel build options. For details, see: 2006-03-17 18:54:44 +00:00
nfsstat Fix markup. 2006-12-25 20:30:10 +00:00
nice Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
nl o Really commit typo fixes to HEAD. 2007-03-25 18:37:59 +00:00
nohup Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
nslookup Fix the problem with the nsupdate(8) man page reported 2006-12-15 18:02:20 +00:00
nsupdate Fix the problem with the nsupdate(8) man page reported 2006-12-15 18:02:20 +00:00
objformat Bah. Kris says the default-to-a.out knowledge has migrated into the 2007-01-25 23:12:19 +00:00
opieinfo Introduce the PRECIOUSPROG knob in bsd.prog.mk, similar 2004-11-03 18:01:21 +00:00
opiekey
opiepasswd Introduce the PRECIOUSPROG knob in bsd.prog.mk, similar 2004-11-03 18:01:21 +00:00
pagesize
passwd Reimplementation of world/kernel build options. For details, see: 2006-03-17 18:54:44 +00:00
paste WARNS=6 chocked on unitialized variable. 2006-09-12 05:08:36 +00:00
pathchk Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
pkill Be more accurate in the description of the -I option: 2006-12-20 11:57:22 +00:00
pr Fix misspelled 'argument' and try to make the sentence into English. 2005-10-26 17:37:54 +00:00
printenv Simplify. 2006-12-26 12:43:12 +00:00
printf Prefer {u,}intmax_t over the deprecated {u_,}quad_t. 2005-08-05 08:18:00 +00:00
quota Fix some spelling / markup / grammar. 2007-02-11 18:13:00 +00:00
renice Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
rev o Kill unneeded assignment. 2006-07-30 07:41:28 +00:00
rlogin len and len2 work better as size_t 2005-11-13 21:03:56 +00:00
rpcgen In change 1.15, an arbitrary setting of the max RPC record size to 2006-05-17 23:18:17 +00:00
rpcinfo rpcinfo(1) doesn't depend on INET6 explicitly. 2006-07-27 13:47:02 +00:00
rs Document that jot(1), rs(1), and lam(1) first appeared in 4.2BSD. 2006-10-20 04:31:01 +00:00
rsh - Remove MLINKS to nonexistant manpages 2005-07-14 20:29:08 +00:00
rup Backport markup fixes from a translated version of a manpage. 2007-02-28 10:22:19 +00:00
ruptime - Do not allocate memory to entries in /var/rwho which have been down for 2005-09-02 14:58:26 +00:00
rusers Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
rwall Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
rwho It's actually 11 minutes when the machine is assumed to be down and removed 2005-08-07 11:48:44 +00:00
script
sed This trivial change should fix at least 3 similar bugs. All of 2007-04-01 13:25:03 +00:00
setchannel Add support for selecting from multiple tuners. 2007-02-25 01:28:37 +00:00
shar Sort sections. 2005-01-18 13:43:56 +00:00
showmount Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
smbutil Make smbfs capable to use 16bit char set in filenames. 2005-05-04 15:05:46 +00:00
sockstat Use proc name (ki_comm) instead of thread name (ki_ocomm) as these may now 2007-03-22 17:47:58 +00:00
split Markup fixes. 2006-09-29 15:20:48 +00:00
stat Markup and wording fixes. 2005-06-14 11:50:53 +00:00
su Backout previous change (SIGSYS related). The fix has been applied to the 2006-10-24 17:41:28 +00:00
systat Fix definitions of kilobits etc. 2007-01-18 09:24:08 +00:00
tabs Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
tail Markup revision. 2006-12-24 19:18:52 +00:00
talk Use socklen_t where appropriate. 2005-03-11 14:17:12 +00:00
tar Add tests for "bsdtar -t". These are useful primarily because they test 2007-03-31 22:04:36 +00:00
tcopy Document some details better, making it easier to translate. 2006-12-20 15:34:01 +00:00
tee Added the EXIT STATUS section where appropriate. 2005-01-17 07:44:44 +00:00
telnet Stop enforcing dependencies between MK_* options at Makefile level. 2006-07-31 13:29:36 +00:00
tftp Set txrx_error to 1 when we reach abort. This makes the program correctly set the exit code. 2006-09-28 21:22:21 +00:00
time Markup fixes. 2006-09-29 15:20:48 +00:00
tip Make cu/tip handle when $HOME is not set in the environment. 2007-02-23 18:41:12 +00:00
top The sigconv.awk script generates a sigdesc.h header file, which 2006-12-01 07:01:19 +00:00
touch Don't set time to current, if set to specific time fails 2006-01-31 02:21:18 +00:00
tput At least one argument is required. 2006-10-12 21:10:55 +00:00
tr o Remove duplicate includes. 2007-01-20 08:24:02 +00:00
true
truncate The -r option can also cause the files to be extended (not 2006-12-19 11:20:34 +00:00
truss Add missing markup bits. 2006-12-11 11:34:44 +00:00
tset Reduce compiler warning: variable might be used uninitialized, by giving 2005-05-29 15:49:53 +00:00
tsort - Remove the ambiguity in the input format description. 2006-12-27 14:56:18 +00:00
tty Fix markup nits, add the EXIT STATUS section. 2006-12-13 20:15:49 +00:00
ul Fix markup. 2007-02-27 12:06:02 +00:00
uname Sort sections. 2005-01-18 13:43:56 +00:00
unexpand Document that unexpand(1)'s -a and -t options are exclusive. 2006-10-13 16:22:25 +00:00
unifdef Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
uniq Document that uniq(1) limits input line length to LINE_MAX characters. 2007-01-15 23:25:51 +00:00
units Expand *n't contractions. 2005-02-13 22:25:33 +00:00
unvis
usbhidaction Let bsd.prog.mk set SRCS and MAN to their default values. 2005-01-28 16:08:11 +00:00
usbhidctl Bump document date. 2006-11-23 05:08:06 +00:00
users
uudecode Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
uuencode - Remove MLINKS to nonexistant manpages 2005-07-14 20:29:08 +00:00
uuidgen Mention that uuidgen(1) generates DCE version 1 UUIDs only 2005-09-07 07:49:21 +00:00
vacation Remove kludges intended to support src trees with partial obj trees. 2005-06-10 06:12:53 +00:00
vgrind Manual page tweaks. 2006-08-29 18:11:20 +00:00
vi Replaced afterinstall: with equivalent FILES and SYMLINKS. 2004-10-18 17:16:01 +00:00
vis Nits. 2006-12-23 19:15:39 +00:00
vmstat - Revert signedness type changes to "struct vmtotal"; by making 2006-11-28 12:46:02 +00:00
w Fix markup. 2006-12-14 19:02:48 +00:00
wall In wall and who, check that the utmp entry isn't stalled, as it is done in w. 2006-02-21 13:01:00 +00:00
wc Prevent a line from being broken on a line boundary. 2006-12-21 22:59:07 +00:00
what Polish markup and wording. 2006-12-14 00:02:44 +00:00
whereis Remove unused variables. 2005-04-09 14:31:41 +00:00
which Refine the previous revision. 2006-12-13 12:09:41 +00:00
who In wall and who, check that the utmp entry isn't stalled, as it is done in w. 2006-02-21 13:01:00 +00:00
whois Make DK-HOSTMASTER show contact info for .dk domains. 2007-01-19 08:13:17 +00:00
window Fixes for gcc 4.x. 2005-08-25 14:09:35 +00:00
write Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
xargs Markup fixes. 2006-09-29 15:20:48 +00:00
xinstall Markup fixes. 2006-09-29 15:20:48 +00:00
xlint Fix a group of typos: 2006-12-29 13:08:46 +00:00
xstr Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 10:14:11 +00:00
yacc Sort sections. 2005-01-18 13:43:56 +00:00
yes
ypcat Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
ypmatch Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
ypwhich Fix markup nit. 2006-12-28 10:58:06 +00:00
Makefile Replace the GNU gzip with a slightly modified NetBSD gzip. The 2007-01-26 10:19:08 +00:00
Makefile.inc