shithub: scc

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