jehanne: pass argc & argv to __application_newlib_init

This commit is contained in:
Giacomo Tesio 2017-11-23 01:18:58 +01:00
parent bd9dbaca9f
commit 82fba2cb99
2 changed files with 5 additions and 5 deletions

View File

@ -102,7 +102,7 @@ extern void jehanne_sysfatal(const char*, ...);
#undef __CYGWIN__ #undef __CYGWIN__
#include <reent.h> #include <reent.h>
extern void __application_newlib_init(void) __attribute__((weak)); extern void __application_newlib_init(int argc, char *argv[]) __attribute__((weak));
static PosixError static PosixError
__stat_reader(struct stat *s, const Dir *d) __stat_reader(struct stat *s, const Dir *d)
@ -221,7 +221,7 @@ open_translator(int flag, int mode, long *omode, long *cperm)
static PosixError static PosixError
default_error_translator(char* error, uintptr_t caller) default_error_translator(char* error, uintptr_t caller)
{ {
jehanne_fprint(2, "newlib: %s\n", error); //jehanne_fprint(2, "newlib: %s\n", error);
PosixError e = libposix_translate_kernel_errors(error); PosixError e = libposix_translate_kernel_errors(error);
if(e != 0) if(e != 0)
return e; return e;
@ -271,7 +271,7 @@ on_process_disposition(int status)
} }
void void
initialize_newlib(void) initialize_newlib(int argc, char *argv[])
{ {
/* */ /* */
libposix_define_at_fdcwd(AT_FDCWD); libposix_define_at_fdcwd(AT_FDCWD);
@ -370,7 +370,7 @@ initialize_newlib(void)
/* let the application override defaults */ /* let the application override defaults */
if(__application_newlib_init != 0) if(__application_newlib_init != 0)
__application_newlib_init(); __application_newlib_init(argc, argv);
} }
/* _fcntl_r is here to access <fcntl.h> */ /* _fcntl_r is here to access <fcntl.h> */

View File

@ -23,7 +23,7 @@
typedef unsigned long clock_t; typedef unsigned long clock_t;
typedef unsigned long useconds_t; typedef unsigned long useconds_t;
extern void initialize_newlib(void); extern void initialize_newlib(int argc, char *argv[]);
static void newlib(int argc, char *argv[]) __attribute__((noreturn)); static void newlib(int argc, char *argv[]) __attribute__((noreturn));
void void