git: 9front

ref: fbd35e617d53c4ad50a44f85c2bd9d31928eddd1
dir: /sys/src/libc/9sys/privalloc.c/

View raw version
#include <u.h>
#include <libc.h>

static Lock	privlock;

extern void	**_privates;
extern int	_nprivates;

void **
privalloc(void)
{
	void **p;

	lock(&privlock);
	if(_nprivates > 0)
		p = &_privates[--_nprivates];
	else
		p = nil;
	unlock(&privlock);

	return p;
}