Annotation of 43BSD/usr.lib/libcurses/tstp.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1980 Regents of the University of California.
                      3:  * All rights reserved.  The Berkeley software License Agreement
                      4:  * specifies the terms and conditions for redistribution.
                      5:  */
                      6: 
                      7: #ifndef lint
                      8: static char sccsid[] = "@(#)tstp.c     5.1 (Berkeley) 6/7/85";
                      9: #endif not lint
                     10: 
                     11: # include      <signal.h>
                     12: 
                     13: # include      "curses.ext"
                     14: 
                     15: /*
                     16:  * handle stop and start signals
                     17:  *
                     18:  * @(#)tstp.c  5.1 (Berkeley) 6/7/85
                     19:  */
                     20: tstp() {
                     21: 
                     22: # ifdef SIGTSTP
                     23: 
                     24:        SGTTY   tty;
                     25:        int     omask;
                     26: # ifdef DEBUG
                     27:        if (outf)
                     28:                fflush(outf);
                     29: # endif
                     30:        tty = _tty;
                     31:        mvcur(0, COLS - 1, LINES - 1, 0);
                     32:        endwin();
                     33:        fflush(stdout);
                     34:        /* reset signal handler so kill below stops us */
                     35:        signal(SIGTSTP, SIG_DFL);
                     36: #define        mask(s) (1 << ((s)-1))
                     37:        omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
                     38:        kill(0, SIGTSTP);
                     39:        sigblock(mask(SIGTSTP));
                     40:        signal(SIGTSTP, tstp);
                     41:        _tty = tty;
                     42:        stty(_tty_ch, &_tty);
                     43:        wrefresh(curscr);
                     44: # endif        SIGTSTP
                     45: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.