X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Flib_setup.c;h=c32887d490daa94ca953d8eb4a76258547c6c8fc;hp=8446c8030d34b5b09518b9c3603c67fabd6ebc65;hb=3eda6f30a84d53844d2ebceadb457e2e7e9cfbf3;hpb=2e68dc325852af56f2ec6c315b323a4f9c3d62c9;ds=sidebyside diff --git a/ncurses/tinfo/lib_setup.c b/ncurses/tinfo/lib_setup.c index 8446c803..c32887d4 100644 --- a/ncurses/tinfo/lib_setup.c +++ b/ncurses/tinfo/lib_setup.c @@ -48,7 +48,7 @@ #include #endif -MODULE_ID("$Id: lib_setup.c,v 1.170 2017/01/07 16:50:16 tom Exp $") +MODULE_ID("$Id: lib_setup.c,v 1.173 2017/04/01 13:48:38 tom Exp $") /**************************************************************************** * @@ -761,10 +761,11 @@ TINFO_SETUP_TERM(TERMINAL ** tp, * If an application calls setupterm() rather than initscr() or * newterm(), we will not have the def_prog_mode() call in * _nc_setupscreen(). Do it now anyway, so we can initialize the - * baudrate. + * baudrate. Also get the shell-mode so that erasechar() works. */ if (NC_ISATTY(Filedes)) { - def_prog_mode(); + NCURSES_SP_NAME(def_shell_mode) (NCURSES_SP_ARG); + NCURSES_SP_NAME(def_prog_mode) (NCURSES_SP_ARG); baudrate(); } code = OK; @@ -811,9 +812,9 @@ TINFO_SETUP_TERM(TERMINAL ** tp, #if NCURSES_SP_FUNCS /* * In case of handling multiple screens, we need to have a screen before - * initialization in setupscreen takes place. This is to extend the substitute - * for some of the stuff in _nc_prescreen, especially for slk and ripoff - * handling which should be done per screen. + * initialization in _nc_setupscreen takes place. This is to extend the + * substitute for some of the stuff in _nc_prescreen, especially for slk and + * ripoff handling which should be done per screen. */ NCURSES_EXPORT(SCREEN *) new_prescr(void) @@ -824,6 +825,7 @@ new_prescr(void) T((T_CALLED("new_prescr()"))); sp = _nc_alloc_screen_sp(); + T(("_nc_alloc_screen_sp %p", sp)); if (sp != 0) { sp->rsp = sp->rippedoff; sp->_filtered = _nc_prescreen.filter_mode;