#ifndef lint
static char
sccsid[] = "@(#)insertln.c 1.6 88/02/08 SMI";
#endif
#include "curses.ext"
#include <string.h>
int
winsertln(WINDOW *win)
{
char *temp;
int y;
char *end;
#ifdef DEBUG
fprintf(outf, "INSERTLN(%0.2o)\n", win);
#endif
if (win->_orig == NULL)
temp = win->_y[win->_maxy - 1];
for (y = win->_maxy - 1; y > win->_cury; --y) {
if (win->_orig == NULL)
win->_y[y] = win->_y[y - 1];
else
(void) memmove(win->_y[y], win->_y[y-1], win->_maxx);
(void) touchline(win, y, 0, win->_maxx - 1);
}
if (win->_orig == NULL)
win->_y[y] = temp;
else
temp = win->_y[y];
for (end = &temp[win->_maxx]; temp < end; )
*temp++ = ' ';
(void) touchline(win, y, 0, win->_maxx - 1);
if (win->_orig == NULL)
_id_subwins(win);
return (OK);
}