Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-8] src/external/bsd/nvi/dist/cl



Module Name:    src
Committed By:   snj
Date:           Sat Sep 23 17:04:40 UTC 2017

Modified Files:
        src/external/bsd/nvi/dist/cl [netbsd-8]: cl_main.c cl_screen.c

Log Message:
Pull up following revision(s) (requested by mlelstv in ticket #276):
        external/bsd/nvi/dist/cl/cl_main.c: revision 1.6
        external/bsd/nvi/dist/cl/cl_screen.c: revision 1.6
When resizing nvi in xterm, a scroll region is set with the old size
which garbles the display.
The scroll region is set for a terminfo scroll operation and then
reset to the current window size. While xterm lets you clear a
scroll region, there is no way to do this in terminfo except by
resetting the terminal which has a visual side effect.
Xterm actually clears the scroll region as part of the resize but
that happens before a program gets the SIGWINCH signal. When nvi sees
the SIGWINCH signal, it exits the vi mode using a scroll operation to
tidy up the display before it reenters vi mode with the new window size.
This patch does two things:
- make nvi also invoke a previous SIGWINCH handler (not sufficient,
  but that's how curses wants it).
- skip the tidy up in case of a restart (avoids the scroll region)


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.5.8.1 src/external/bsd/nvi/dist/cl/cl_main.c \
    src/external/bsd/nvi/dist/cl/cl_screen.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index