[BACK]Return to wwflush.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / window

Diff for /src/usr.bin/window/Attic/wwflush.c between version 1.1 and 1.2

version 1.1, 1995/10/18 08:46:58 version 1.2, 1995/12/26 18:00:31
Line 1 
Line 1 
 /*      $NetBSD: wwflush.c,v 1.3 1995/09/28 10:35:30 tls Exp $  */  /*      $NetBSD: wwflush.c,v 1.5 1995/12/21 10:46:08 mycroft Exp $      */
   
 /*  /*
  * Copyright (c) 1983, 1993   * Copyright (c) 1983, 1993
Line 40 
Line 40 
 #if 0  #if 0
 static char sccsid[] = "@(#)wwflush.c   8.1 (Berkeley) 6/6/93";  static char sccsid[] = "@(#)wwflush.c   8.1 (Berkeley) 6/6/93";
 #else  #else
 static char rcsid[] = "$NetBSD: wwflush.c,v 1.3 1995/09/28 10:35:30 tls Exp $";  static char rcsid[] = "$NetBSD: wwflush.c,v 1.5 1995/12/21 10:46:08 mycroft Exp $";
 #endif  #endif
 #endif /* not lint */  #endif /* not lint */
   
Line 70 
Line 70 
   
 wwcheckpoint()  wwcheckpoint()
 {  {
         int s = sigblock(sigmask(SIGALRM) | sigmask(SIGIO));          sigset_t sigset, osigset;
   
           sigemptyset(&sigset);
           sigaddset(&sigset, SIGALRM);
           sigprocmask(SIG_BLOCK, &sigset, &osigset);
   
         tt.tt_ack = 0;          tt.tt_ack = 0;
         do {          do {
                 (*tt.tt_checkpoint)();                  (*tt.tt_checkpoint)();
Line 80 
Line 84 
 #endif  #endif
                 (void) alarm(3);                  (void) alarm(3);
                 for (wwdocheckpoint = 0; !wwdocheckpoint && tt.tt_ack == 0;)                  for (wwdocheckpoint = 0; !wwdocheckpoint && tt.tt_ack == 0;)
                         (void) sigpause(s);                          sigsuspend(&osigset);
         } while (tt.tt_ack == 0);          } while (tt.tt_ack == 0);
         (void) alarm(0);          (void) alarm(0);
         wwdocheckpoint = 0;          wwdocheckpoint = 0;
Line 94 
Line 98 
                 wwcopyscreen(wwos, wwcs);                  wwcopyscreen(wwos, wwcs);
                 (void) alarm(3);                  (void) alarm(3);
         }          }
         (void) sigsetmask(s);  
           sigprocmask(SIG_SETMASK, &osigset, (sigset_t *)0);
 }  }
   
 wwcopyscreen(s1, s2)  wwcopyscreen(s1, s2)

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2