summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2022-05-24 12:17:19 +0900
committerGitHub <noreply@github.com>2022-05-24 12:17:19 +0900
commitd2033d0f06f6962031c51187c73e6bec8cae6e9b (patch)
treea56b8950f46eb6bf64a5102e85c2a332f2a89c5a
parent2d1e7dfc36d048003ec2cb09b30f850032fd9c42 (diff)
[WASM] System initialization has no stack rewinding code to Asyncify
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5929 Merged-By: nobu <nobu@ruby-lang.org>
-rw-r--r--main.c28
1 files changed, 13 insertions, 15 deletions
diff --git a/main.c b/main.c
index 5cffa24cc8..e76228713f 100644
--- a/main.c
+++ b/main.c
@@ -33,6 +33,19 @@
static int
rb_main(int argc, char **argv)
{
+ RUBY_INIT_STACK;
+ ruby_init();
+ return ruby_run_node(ruby_options(argc, argv));
+}
+
+#if defined(__wasm__) && !defined(__EMSCRIPTEN__)
+int rb_wasm_rt_start(int (main)(int argc, char **argv), int argc, char **argv);
+#define rb_main(argc, argv) rb_wasm_rt_start(rb_main, argc, argv)
+#endif
+
+int
+main(int argc, char **argv)
+{
#ifdef RUBY_DEBUG_ENV
ruby_set_debug_option(getenv("RUBY_DEBUG"));
#endif
@@ -41,20 +54,5 @@ rb_main(int argc, char **argv)
#endif
ruby_sysinit(&argc, &argv);
- {
- RUBY_INIT_STACK;
- ruby_init();
- return ruby_run_node(ruby_options(argc, argv));
- }
-}
-
-int
-main(int argc, char **argv)
-{
-#if defined(__wasm__) && !defined(__EMSCRIPTEN__)
- int rb_wasm_rt_start(int (main)(int argc, char **argv), int argc, char **argv);
- return rb_wasm_rt_start(rb_main, argc, argv);
-#else
return rb_main(argc, argv);
-#endif
}