xref: /csrg-svn/usr.bin/window/wwclose.c (revision 18203)
113982Sedward #ifndef lint
2*18203Sedward static char sccsid[] = "@(#)wwclose.c	3.12 03/01/85";
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;
1216313Sedward 	if (w->ww_pty >= 0)
1316313Sedward 		(void) close(w->ww_pty);
1416313Sedward 	if (w->ww_socket >= 0)
1516313Sedward 		(void) close(w->ww_socket);
1614987Sedward 	wwfree((char **)w->ww_win, w->ww_w.t);
17*18203Sedward 	wwfree((char **)w->ww_buf, w->ww_b.t);
1814830Sedward 	if (w->ww_fmap != 0)
1914987Sedward 		wwfree((char **)w->ww_fmap, w->ww_w.t);
2014987Sedward 	free((char *)(w->ww_nvis + w->ww_w.t));
2116108Sedward 	if (w->ww_ob != 0)
2216108Sedward 		free(w->ww_ob);
2314415Sedward 	free((char *)w);
2413982Sedward }
25