xref: /csrg-svn/usr.bin/window/wwclose.c (revision 15632)
113982Sedward #ifndef lint
2*15632Sedward static	char *sccsid = "@(#)wwclose.c	3.7 83/12/01";
313982Sedward #endif
413982Sedward 
513982Sedward #include "ww.h"
613982Sedward #include <signal.h>
713982Sedward 
813982Sedward wwclose(w)
913982Sedward register struct ww *w;
1013982Sedward {
1114415Sedward 	wwindex[w->ww_index] = 0;
1214415Sedward 	if (w->ww_state == WWS_HASPROC)
1314415Sedward 		(void) kill(w->ww_pid, SIGHUP);
14*15632Sedward 	(void) close(w->ww_pty);
1514987Sedward 	wwfree((char **)w->ww_win, w->ww_w.t);
1614987Sedward 	wwfree((char **)w->ww_buf, w->ww_w.t);
1714830Sedward 	if (w->ww_fmap != 0)
1814987Sedward 		wwfree((char **)w->ww_fmap, w->ww_w.t);
1914987Sedward 	free((char *)(w->ww_nvis + w->ww_w.t));
2014415Sedward 	free((char *)w);
2113982Sedward }
22