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.