diff --git a/NEWS b/NEWS index 4beefaf08209..eb38025cbf45 100644 --- a/NEWS +++ b/NEWS @@ -10,6 +10,15 @@ To report bugs, suggestions or comments, send email to bug-less@gnu.org or markn@greenwoodsoftware.com. +====================================================================== + + Major changes between "less" versions 443 and 444 + +* Fix bug in unget handling that can cause strange effects on the + command line. + +* Remove vestiges of obsolete -l option that can cause a crash. + ====================================================================== Major changes between "less" versions 436 and 443 diff --git a/README b/README index a425cd5eb8f1..c4cfa63ef23b 100644 --- a/README +++ b/README @@ -1,7 +1,7 @@ - Less, version 443 + Less, version 444 - This is the distribution of less, version 443, released 09 Apr 2011. + This is the distribution of less, version 444, released 09 Jun 2011. This program is part of the GNU project (http://www.gnu.org). This program is free software. You may redistribute it and/or diff --git a/command.c b/command.c index aa69a47c1522..bacb058a5e17 100644 --- a/command.c +++ b/command.c @@ -300,6 +300,7 @@ is_erase_char(c) */ static int mca_opt_first_char(c) + int c; { int flag = (optflag & ~OPT_NO_PROMPT); if (flag == OPT_NO_TOGGLE) @@ -839,6 +840,7 @@ ungetcc(c) ug->ug_char = c; ug->ug_next = ungot; ungot = ug; + unget_end = 0; } /* diff --git a/funcs.h b/funcs.h index 8464ada4b64f..6595232e3dd1 100644 --- a/funcs.h +++ b/funcs.h @@ -194,7 +194,6 @@ public void unmark (); public void opt_o (); public void opt__O (); - public void opt_l (); public void opt_j (); public void calc_jump_sline (); public void opt_shift (); diff --git a/less.man b/less.man index 86e329c0fa53..a54609d953eb 100644 --- a/less.man +++ b/less.man @@ -1156,7 +1156,7 @@ LESS(1) LESS(1) next 8bcccbcc18b95.bb125.bb If neither LESSCHARSET nor LESSCHARDEF is set, but any of the strings - "UTF-8", "UTF8", "utf-8" or "utf8" is found in the LC_ALL, LC_TYPE or + "UTF-8", "UTF8", "utf-8" or "utf8" is found in the LC_ALL, LC_CTYPE or LANG environment variables, then the default character set is utf-8. If that string is not found, but your system supports the setlocale @@ -1580,4 +1580,4 @@ LESS(1) LESS(1) - Version 443: 09 Apr 2011 LESS(1) + Version 444: 09 Jun 2011 LESS(1) diff --git a/less.nro b/less.nro index 33050e15bb45..0bc21b505cd5 100644 --- a/less.nro +++ b/less.nro @@ -1,4 +1,4 @@ -.TH LESS 1 "Version 443: 09 Apr 2011" +.TH LESS 1 "Version 444: 09 Jun 2011" .SH NAME less \- opposite of more .SH SYNOPSIS @@ -1276,7 +1276,7 @@ to each of the possible values for LESSCHARSET: .PP If neither LESSCHARSET nor LESSCHARDEF is set, but any of the strings "UTF-8", "UTF8", "utf-8" or "utf8" -is found in the LC_ALL, LC_TYPE or LANG +is found in the LC_ALL, LC_CTYPE or LANG environment variables, then the default character set is utf-8. .PP If that string is not found, but your system supports the diff --git a/lessecho.man b/lessecho.man index 32bccba8889a..682b0bd835ed 100644 --- a/lessecho.man +++ b/lessecho.man @@ -46,4 +46,4 @@ LESSECHO(1) LESSECHO(1) - Version 443: 09 Apr 2011 LESSECHO(1) + Version 444: 09 Jun 2011 LESSECHO(1) diff --git a/lessecho.nro b/lessecho.nro index 5c17708f9edb..46540e8bccad 100644 --- a/lessecho.nro +++ b/lessecho.nro @@ -1,4 +1,4 @@ -.TH LESSECHO 1 "Version 443: 09 Apr 2011" +.TH LESSECHO 1 "Version 444: 09 Jun 2011" .SH NAME lessecho \- expand metacharacters .SH SYNOPSIS diff --git a/lesskey.man b/lesskey.man index b315ea672442..5e0a99914baf 100644 --- a/lesskey.man +++ b/lesskey.man @@ -354,4 +354,4 @@ LESSKEY(1) LESSKEY(1) - Version 443: 09 Apr 2011 LESSKEY(1) + Version 444: 09 Jun 2011 LESSKEY(1) diff --git a/lesskey.nro b/lesskey.nro index 8c99a0f8cfc2..d305b957ce1f 100644 --- a/lesskey.nro +++ b/lesskey.nro @@ -1,4 +1,4 @@ -.TH LESSKEY 1 "Version 443: 09 Apr 2011" +.TH LESSKEY 1 "Version 444: 09 Jun 2011" .SH NAME lesskey \- specify key bindings for less .SH SYNOPSIS diff --git a/optfunc.c b/optfunc.c index 79ac7c62268a..a0aa10a81cd3 100644 --- a/optfunc.c +++ b/optfunc.c @@ -131,34 +131,6 @@ opt__O(type, s) } #endif -/* - * Handlers for -l option. - */ - public void -opt_l(type, s) - int type; - char *s; -{ - int err; - int n; - char *t; - - switch (type) - { - case INIT: - t = s; - n = getnum(&t, "l", &err); - if (err || n <= 0) - { - error("Line number is required after -l", NULL_PARG); - return; - } - plusoption = TRUE; - ungetsc(s); - break; - } -} - /* * Handlers for -j option. */ diff --git a/opttbl.c b/opttbl.c index d1c60a27c8c9..63f6889955bd 100644 --- a/opttbl.c +++ b/opttbl.c @@ -263,10 +263,6 @@ static struct loption option[] = NULL } }, - { 'l', NULL, - STRING|NO_TOGGLE|NO_QUERY, 0, NULL, opt_l, - { NULL, NULL, NULL } - }, { 'L', &L__optname, BOOL, OPT_ON, &use_lessopen, NULL, { diff --git a/version.c b/version.c index be75d2033fd2..dc5bb0c4f2fe 100644 --- a/version.c +++ b/version.c @@ -742,6 +742,7 @@ v441 1/21/11 Fix semi-infinite loop if no newlines in file; v442 3/2/11 Fix search bug. Add ctrl-G line edit command. v443 4/9/11 Fix Windows build. +v444 6/8/11 Fix ungetc bug; remove vestiges of obsolete -l option. */ -char version[] = "443"; +char version[] = "444";