remove spurious i_un.
[unix-history] / usr / src / lib / libcurses / insch.c
# include "curses.ext"
/*
* This routine performs an insert-char on the line, leaving
* (_cury,_curx) unchanged.
*
* @(#)insch.c 1.2 (Berkeley) %G%
*/
winsch(win, c)
reg WINDOW *win;
char c; {
reg char *temp1, *temp2;
reg char *end;
end = &win->_y[win->_cury][win->_curx];
temp1 = &win->_y[win->_cury][win->_maxx - 1];
temp2 = temp1 - 1;
while (temp1 > end)
*temp1-- = *temp2--;
*temp1 = c;
win->_lastch[win->_cury] = win->_maxx - 1;
if (win->_firstch[win->_cury] == _NOCHANGE ||
win->_firstch[win->_cury] > win->_curx)
win->_firstch[win->_cury] = win->_curx;
if (win->_cury == LINES - 1 && win->_y[LINES-1][COLS-1] != ' ')
if (win->_scroll) {
wrefresh(win);
scroll(win);
win->_cury--;
}
else
return ERR;
return OK;
}