ncurses 5.7 - patch 20100123
[ncurses.git] / ncurses / base / lib_newterm.c
index 9e1649de4ac6fa6ada3c69808012da84aba70d0d..c276a0fccc1a4e0d08648c0a928a8da733c04147 100644 (file)
@@ -52,7 +52,7 @@
 
 #include <tic.h>
 
-MODULE_ID("$Id: lib_newterm.c,v 1.81 2009/09/27 00:34:05 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.84 2009/11/28 22:43:51 tom Exp $")
 
 #ifdef USE_TERM_DRIVER
 #define NumLabels      InfoOf(SP_PARM).numlabels
@@ -110,7 +110,7 @@ NCURSES_EXPORT(void)
 NCURSES_SP_NAME(filter) (NCURSES_SP_DCL0)
 {
     START_TRACE();
-    T((T_CALLED("filter(%p)"), SP_PARM));
+    T((T_CALLED("filter(%p)"), (void *) SP_PARM));
 #if NCURSES_SP_FUNCS
     if (IsPreScreen(SP_PARM)) {
        SP_PARM->_filtered = TRUE;
@@ -141,7 +141,7 @@ NCURSES_EXPORT(void)
 NCURSES_SP_NAME(nofilter) (NCURSES_SP_DCL0)
 {
     START_TRACE();
-    T((T_CALLED("nofilter(%p)"), SP_PARM));
+    T((T_CALLED("nofilter(%p)"), (void *) SP_PARM));
 #if NCURSES_SP_FUNCS
     if (IsPreScreen(SP_PARM)) {
        SP_PARM->_filtered = FALSE;
@@ -183,7 +183,11 @@ NCURSES_SP_NAME(newterm) (NCURSES_SP_DCLx
     TERMINAL *new_term = 0;
 
     START_TRACE();
-    T((T_CALLED("newterm(%p, \"%s\", %p,%p)"), SP_PARM, name, ofp, ifp));
+    T((T_CALLED("newterm(%p, \"%s\", %p,%p)"),
+       (void *) SP_PARM,
+       name,
+       (void *) ofp,
+       (void *) ifp));
 
 #if NCURSES_SP_FUNCS
     assert(SP_PARM != 0);
@@ -197,6 +201,7 @@ NCURSES_SP_NAME(newterm) (NCURSES_SP_DCLx
     current = CURRENT_SCREEN;
     its_term = (current ? current->_term : 0);
 
+    INIT_TERM_DRIVER();
     /* this loads the capability entry, then sets LINES and COLS */
     if (
 #if NCURSES_SP_FUNCS
@@ -272,7 +277,7 @@ NCURSES_SP_NAME(newterm) (NCURSES_SP_DCLx
 
            /* if the terminal type has real soft labels, set those up */
            if (slk_format && NumLabels > 0 && SLK_STDFMT(slk_format))
-               _nc_slk_initialize(SP_PARM->_stdscr, cols);
+               _nc_slk_initialize(StdScreen(SP_PARM), cols);
 
            SP_PARM->_ifd = fileno(_ifp);
            NCURSES_SP_NAME(typeahead) (NCURSES_SP_ARGx fileno(_ifp));