xref: /original-bsd/usr.bin/window/wwclose.c (revision fd1dcdc9)
1 #ifndef lint
2 static char sccsid[] = "@(#)wwclose.c	3.11 05/23/84";
3 #endif
4 
5 #include "ww.h"
6 #include <signal.h>
7 
8 wwclose(w)
9 register struct ww *w;
10 {
11 	wwindex[w->ww_index] = 0;
12 	if (w->ww_pty >= 0)
13 		(void) close(w->ww_pty);
14 	if (w->ww_socket >= 0)
15 		(void) close(w->ww_socket);
16 	wwfree((char **)w->ww_win, w->ww_w.t);
17 	wwfree((char **)w->ww_buf, w->ww_w.t);
18 	if (w->ww_fmap != 0)
19 		wwfree((char **)w->ww_fmap, w->ww_w.t);
20 	free((char *)(w->ww_nvis + w->ww_w.t));
21 	if (w->ww_ob != 0)
22 		free(w->ww_ob);
23 	free((char *)w);
24 }
25