Commit Graph

4 Commits

Author SHA1 Message Date
Rong-En Fan
781d8f4e76 - Fix crash with ncurses on FreeBSD/amd64 CURRENT by including missing
header <term.h>, which is required by both tputs() and tgoto().

  Without this header, nvi crashes with the call to tputs() at line 114.
  This is because the first argument of tputs() is a pointer, and the
  returned pointer from tgoto() is casted to an integer by compiler.

  For some reasons, this only crashes on amd64+CURRENT. On 6.x system,
  this does not happen.

PR:		101248
Reported by:	yar, infofarmer, Roland Smith
Tested by:	infofarmer, delphij, rafan
Approved by:	delphij (mentor)
2007-06-06 02:23:03 +00:00
Robert Watson
09333c6166 o nvi failed to correctly handle EINTR returned from tcsetattr(), exiting
instead of recovering, which happens in particular during a rapid series
  of SIGWINCH's.  This change forces nvi to loop on the call in the event
  that the call is interrupted.

Interestingly, I submitted this bug report in 1998, and a solution was
posted shortly thereafter by Matthias Buelow; it's been sitting in the
PR database ever since.

Note: this takes this file off the vendor branch.  If and when we find
a vendor for this code, the fix should be given back to them.

PR:		bin/8438
Submitted by:	Matthias Buelow <mkb@altair.mayn.de>
MFC after:	1 month
2001-11-09 02:23:05 +00:00
Ruslan Ermilov
b8d4dc6c68 Follow POLA and bind the <End> key to the `$' command.
This is committed to the vendor (BOSTIC) branch because
it was accepted (committed) by ``nvi'' maintainers:

On Fri, Dec 01, 2000 at 03:51:14PM +0100, Sven Verdoolaege wrote:
[...]
> RCS file: /b/CVSROOT/vi/cl/cl_bsd.c,v
> Working file: cl_bsd.c
> head: 8.32
> branch:
> locks: strict
> access list:
> symbolic names:
>         nvi1-81-1: 8.31
>         nvi1-81-0: 8.30
>         nvi1-80: 8.29.0.2
> keyword substitution: kv
> total revisions: 32;    selected revisions: 1
> description:
> ----------------------------
> revision 8.32
> date: 2000/12/01 13:56:17;  author: skimo;  state: Exp;  lines: +2 -1
> allow use of <End> key on AT-compatible keyboards (Ruslan Ermilov <ru@FreeBSD.org>)
> =============================================================================
>
> RCS file: /b/CVSROOT/vi/cl/cl_term.c,v
> Working file: cl_term.c
> head: 10.28
> branch:
> locks: strict
> access list:
> symbolic names:
>         nvi1-81-1: 10.27
>         nvi1-81-0: 10.23
>         nvi1-80: 10.23.0.2
> keyword substitution: kv
> total revisions: 47;    selected revisions: 1
> description:
> ----------------------------
> revision 10.28
> date: 2000/12/01 13:56:18;  author: skimo;  state: Exp;  lines: +2 -1
> allow use of <End> key on AT-compatible keyboards (Ruslan Ermilov <ru@FreeBSD.org>)
2000-12-01 15:36:10 +00:00
Peter Wemm
b8ba871bd9 Import of nvi-1.79, minus a few bits that we dont need (eg: postscript
files, curses, db, regex etc that we already have).  The other glue will
follow shortly.

Obtained from: Keith Bostic <bostic@bostic.com>
1996-11-01 06:45:43 +00:00