1*1647Smckusick /* Copyright (c) 1979 Regents of the University of California */
2*1647Smckusick 
3*1647Smckusick static char sccsid[] = "@(#)DISPOSE.c 1.1 10/30/80";
4*1647Smckusick 
5*1647Smckusick #include	"h00vars.h"
6*1647Smckusick #include	"h01errs.h"
7*1647Smckusick 
8*1647Smckusick DISPOSE(var, size)
9*1647Smckusick 	register char	**var;	/* pointer to pointer being deallocated */
10*1647Smckusick 	int		size;	/* sizeof(bletch) */
11*1647Smckusick {
12*1647Smckusick 	if (*var == 0 || *var + size > _maxptr || *var < _minptr) {
13*1647Smckusick 		ERROR(ENILPTR,0);
14*1647Smckusick 		return;
15*1647Smckusick 	}
16*1647Smckusick 	free(*var);
17*1647Smckusick 	if (*var == _minptr)
18*1647Smckusick 		_minptr += size;
19*1647Smckusick 	if (*var + size == _maxptr)
20*1647Smckusick 		_maxptr -= size;
21*1647Smckusick 	*var = (char *)(0);
22*1647Smckusick }
23