Make work with new split telnet.
[unix-history] / usr / src / usr.bin / tn3270 / sys_curses / termout.c
index 34e0a32..c6e7ec0 100644 (file)
@@ -11,7 +11,7 @@
  */
 
 #ifndef lint
  */
 
 #ifndef lint
-static char sccsid[] = "@(#)termout.c  3.2 (Berkeley) %G%";
+static char sccsid[] = "@(#)termout.c  3.4 (Berkeley) %G%";
 #endif /* not lint */
 
 #if defined(unix)
 #endif /* not lint */
 
 #if defined(unix)
@@ -246,7 +246,7 @@ SlowScreen()
      * decide when the output has caught up.
      */
 
      * decide when the output has caught up.
      */
 
-    if (Highest == HighestScreen()) {
+    if (Highest >= HighestScreen()) {  /* Could be > if screen shrunk... */
        Highest = ScreenDec(Highest);   /* else, while loop will never end */
     }
     if (Lowest < LowestScreen()) {
        Highest = ScreenDec(Highest);   /* else, while loop will never end */
     }
     if (Lowest < LowestScreen()) {
@@ -604,6 +604,12 @@ InitTerminal()
        extern char *tgetstr();
 #endif /* defined(unix) */
 
        extern char *tgetstr();
 #endif /* defined(unix) */
 
+       if (initscr() == ERR) { /* Initialize curses to get line size */
+           ExitString("InitTerminal:  Error initializing curses", 1);
+           /*NOTREACHED*/
+       }
+       MaxNumberLines = LINES;
+       MaxNumberColumns = COLS;
        ClearArray(Terminal);
        terminalCursorAddress = SetBufferAddress(0,0);
 #if defined(unix)
        ClearArray(Terminal);
        terminalCursorAddress = SetBufferAddress(0,0);
 #if defined(unix)