X-Git-Url: https://pd.if.org/git/?p=pdclib;a=blobdiff_plain;f=functions%2Fstdlib%2Fexit.c;h=fa91ade1876d2b75a1626356a37f4cc57f0d243d;hp=8d5aa174bec08f901c1191390e9de3a6515adfd2;hb=da0f3f353d417fed71f358a48d5d5394145e460d;hpb=b08f4b52b1cd1f7a9553c0f357a7c90859fa3e73 diff --git a/functions/stdlib/exit.c b/functions/stdlib/exit.c index 8d5aa17..fa91ade 100644 --- a/functions/stdlib/exit.c +++ b/functions/stdlib/exit.c @@ -1,5 +1,3 @@ -/* $Id$ */ - /* exit( int ) This file is part of the Public Domain C Library (PDCLib). @@ -9,6 +7,7 @@ #include #ifndef REGTEST +#include "_PDCLIB_io.h" /* TODO - "except that a function is called after any previously registered functions that had already been called at the time it was registered. @@ -19,14 +18,14 @@ */ #define NUMBER_OF_SLOTS 40 -void (*_PDCLIB_regstack[ NUMBER_OF_SLOTS ])( void ); -size_t _PDCLIB_regptr = NUMBER_OF_SLOTS; +void (*_PDCLIB_exitstack[ NUMBER_OF_SLOTS ])( void ) = { _PDCLIB_closeall }; +size_t _PDCLIB_exitptr = NUMBER_OF_SLOTS; void exit( int status ) { - while ( _PDCLIB_regptr < NUMBER_OF_SLOTS ) + while ( _PDCLIB_exitptr < NUMBER_OF_SLOTS ) { - _PDCLIB_regstack[ _PDCLIB_regptr++ ](); + _PDCLIB_exitstack[ _PDCLIB_exitptr++ ](); } _Exit( status ); } @@ -34,7 +33,7 @@ void exit( int status ) #endif #ifdef TEST -#include <_PDCLIB_test.h> +#include "_PDCLIB_test.h" int main( void ) {