ref: c598dd38d7d921a59b9afa44fa5b7c8b8ae08e37
dir: /libc/src/atexit.c/
/* See LICENSE file for copyright and license details. */
#include <stdlib.h>
#undef atexit
extern void (*_atexitf[_ATEXIT_MAX])(void);
int
atexit(void (*fun)(void))
{
void (**bp)(void);
for (bp = _atexitf; bp < &_atexitf[_ATEXIT_MAX] && *bp; ++bp)
/* nothing */;
if (bp == &_atexitf[_ATEXIT_MAX])
return 0;
*bp = fun;
return 1;
}