File:  [Research Unix] / researchv9 / cmd / ps / nalloc.c
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:59 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv9-SUN3_old, researchv9-SUN3, HEAD
researchv9-SUN3(old)

char *
nalloc(pp, size, asize)
register char **pp;
{
	char *malloc(), *realloc();
	register char *p; int np;
	for (;;) {
		if ((p = pp[1]) + size <= pp[2])
			return (pp[1] += size, p);
		if (p = pp[0])
			np = pp[1] - p, p = realloc(p, asize += pp[2] - p);
		else
			np = 0, p = malloc(asize);
		if (p == 0)
			return 0;
		pp[0] = p;
		pp[1] = p + np;
		pp[2] = p + asize;
	}
}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.