140865Sbostic /*- 2*62092Sbostic * Copyright (c) 1979, 1993 3*62092Sbostic * The Regents of the University of California. All rights reserved. 440865Sbostic * 540865Sbostic * %sccs.include.redist.c% 640865Sbostic */ 71647Smckusick 840865Sbostic #ifndef lint 9*62092Sbostic static char sccsid[] = "@(#)DISPOSE.c 8.1 (Berkeley) 06/06/93"; 1040865Sbostic #endif /* not lint */ 111647Smckusick 121647Smckusick #include "h00vars.h" 131647Smckusick DISPOSE(var,siz)143001SmckusicDISPOSE(var, siz) 151647Smckusick register char **var; /* pointer to pointer being deallocated */ 163001Smckusic long siz; /* sizeof(bletch) */ 171647Smckusick { 183001Smckusic register int size = siz; 193001Smckusic 201647Smckusick if (*var == 0 || *var + size > _maxptr || *var < _minptr) { 213867Smckusic ERROR("Pointer value out of legal range\n", 0); 221647Smckusick return; 231647Smckusick } 241647Smckusick free(*var); 251647Smckusick if (*var == _minptr) 261647Smckusick _minptr += size; 271647Smckusick if (*var + size == _maxptr) 281647Smckusick _maxptr -= size; 291647Smckusick *var = (char *)(0); 301647Smckusick } 31