Fixes to MakeReleaseSet script
[tpg/acess2.git] / Usermode / Libraries / libc.so_src / stdlib.c
index 733cb91..191f526 100644 (file)
@@ -13,6 +13,8 @@
 #define _stdout        1\r
 #define _stdin 0\r
 \r
+extern void    *_crt0_exit_handler;\r
+\r
 // === PROTOTYPES ===\r
 EXPORT int     atoi(const char *str);\r
 EXPORT void    exit(int status);\r
@@ -24,6 +26,8 @@ void  (*g_stdlib_exithandler)(void);
 void atexit(void (*__func)(void))\r
 {\r
        g_stdlib_exithandler = __func;\r
+       // TODO: Replace with meta-function to allow multiple atexit() handlers\r
+       _crt0_exit_handler = __func;    \r
 }\r
 \r
 /**\r
@@ -32,6 +36,8 @@ void atexit(void (*__func)(void))
  */\r
 EXPORT void exit(int status)\r
 {\r
+       if( g_stdlib_exithandler )\r
+               g_stdlib_exithandler();\r
        _exit(status);\r
 }\r
 \r

UCC git Repository :: git.ucc.asn.au