shithub: scc

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