diff options
Diffstat (limited to 'lib/libc/src/main.c')
-rw-r--r-- | lib/libc/src/main.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/lib/libc/src/main.c b/lib/libc/src/main.c index 1154b21..b178c07 100644 --- a/lib/libc/src/main.c +++ b/lib/libc/src/main.c @@ -30,10 +30,25 @@ #include <stdint.h> #include <stddef.h> +extern int __libc_stdio_init(void); +extern int __malloc_mem_init(void); + int main(int argc, char **argv); int __libc_entry(uint64_t *ctx) { - return main(0, NULL); + int status; + uint64_t argc; + char **argv; + + argc = *(ctx++); + argv = (char **)((ctx++)); + + if ((status = __libc_stdio_init()) != 0) { + return status; + } + + __malloc_mem_init(); + return main(argc, argv); } |