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