xref: /csrg-svn/usr.bin/window/wwsuspend.c (revision 42954)
118742Sedward /*
233514Sbostic  * Copyright (c) 1983 Regents of the University of California.
333514Sbostic  * All rights reserved.
433514Sbostic  *
5*42954Sbostic  * This code is derived from software contributed to Berkeley by
6*42954Sbostic  * Edward Wang at The University of California, Berkeley.
7*42954Sbostic  *
842835Sbostic  * %sccs.include.redist.c%
918742Sedward  */
1018742Sedward 
1133514Sbostic #ifndef lint
12*42954Sbostic static char sccsid[] = "@(#)wwsuspend.c	3.13 (Berkeley) 06/06/90";
1333514Sbostic #endif /* not lint */
1433514Sbostic 
1513960Sedward #include "ww.h"
1614649Sedward #include "tt.h"
1716398Sedward #include <sys/signal.h>
1813960Sedward 
1913960Sedward wwsuspend()
2013960Sedward {
2139255Sbostic 	sig_t oldsig;
2213960Sedward 
2315365Sedward 	oldsig = signal(SIGTSTP, SIG_IGN);
2413960Sedward 	wwend();
2515365Sedward 	(void) signal(SIGTSTP, SIG_DFL);
2614412Sedward 	(void) kill(0, SIGTSTP);
2715365Sedward 	(void) signal(SIGTSTP, SIG_IGN);
2817409Sedward 	(void) wwsettty(0, &wwnewtty, &wwoldtty);
2938563Sedward 	xxstart();
3038563Sedward 	wwredraw();		/* XXX, clears the screen twice */
3115365Sedward 	(void) signal(SIGTSTP, oldsig);
3213960Sedward }
33