shithub: scc

ref: 60de88f36a2b22b01a5c638b9483ab8796c62f1d
dir: /libc/src/atexit.c/

View raw version
/* See LICENSE file for copyright and license details. */

#include <stdlib.h>
#include <errno.h>
#undef atexit

extern void (*_exitf[_ATEXIT_MAX])(void);
extern unsigned _exitn;

int
atexit(void (*fun)(void))
{
	if (_exitn == _ATEXIT_MAX) {
		errno = ENOMEN;
		return -1;
	}
	_exitf[_exitn++] = fun;
	return 0;
}