git: 9front

ref: e2e9ffea72073b3b706d1e7f7c07b3ccf79e9864
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;
}