Re-enabled horizon __crt_init

This commit is contained in:
2021-08-26 13:28:39 +01:00
parent 0d746579b5
commit 30085621f6

View File

@@ -18,7 +18,6 @@ const char **__crt_environ()
extern int main(int, const char **); extern int main(int, const char **);
extern void __crt_run_atexit(); extern void __crt_run_atexit();
#if 0
static void parse_args( static void parse_args(
mx_bootstrap_msg_t *args, mx_handle_t *handles, mx_bootstrap_msg_t *args, mx_handle_t *handles,
const char **argv, const char **envp, int hndc, mx_bootstrap_handle_t *handles_out) const char **argv, const char **envp, int hndc, mx_bootstrap_handle_t *handles_out)
@@ -40,6 +39,7 @@ static void parse_args(
} }
} }
#if 0
if (args->environ_num > 0) { if (args->environ_num > 0) {
char *env_buf = (char *)args + args->environ_off; char *env_buf = (char *)args + args->environ_off;
int env_i = 0; int env_i = 0;
@@ -56,6 +56,7 @@ static void parse_args(
} }
} }
} }
#endif
uint32_t *hent = (uint32_t *)((char *)args + args->handle_info_off); uint32_t *hent = (uint32_t *)((char *)args + args->handle_info_off);
@@ -102,20 +103,14 @@ int __crt_init(mx_handle_t bootstrap)
environ = envp; environ = envp;
parse_args(msg, handles, argv, envp, nr_handles, start_handles); parse_args(msg, handles, argv, envp, nr_handles, start_handles);
mx_init_startup_handles(start_handles, nr_handles + 1); mx_bootstrap_handle_init(start_handles, nr_handles + 1);
int ret = main(msg->args_num, argv); int ret = main(msg->args_num, argv);
__crt_run_atexit(); __crt_run_atexit();
mx_task_kill(mx_get_startup_handle(MX_B_TASK_SELF), ret); mx_task_kill(mx_bootstrap_handle_get(MX_B_TASK_SELF), ret);
/* unreachable */ /* unreachable */
hang(); hang();
return 0; return 0;
} }
#endif
int __crt_init(mx_handle_t bootstrap)
{
return -1;
}