diff options
author | Takashi Kokubun <takashikkbn@gmail.com> | 2020-02-28 23:58:33 -0800 |
---|---|---|
committer | NARUSE, Yui <naruse@airemix.jp> | 2020-03-15 19:35:24 +0900 |
commit | a36ead3f4fe801ddaebe6d1ed905e9e3276dbac7 (patch) | |
tree | 53de69643c057929db9305329fa16989b96c9ded /internal.h | |
parent | 17e925b9917f4877f2da8c64316feb3ce1ca2932 (diff) |
Prevent unloading methods used in root_fiber while calling another Fiber (#2939)
Fixing SEGVs like:
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2744905
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2744420
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2741400
[Bug #16664]
(cherry picked from commit adcf0316d1ecedae2a9157ad941550e0c0fb510b)
Diffstat (limited to 'internal.h')
-rw-r--r-- | internal.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/internal.h b/internal.h index f2e3862198..d5f1b93b39 100644 --- a/internal.h +++ b/internal.h @@ -1505,9 +1505,11 @@ VALUE rb_dbl_complex_new_polar_pi(double abs, double ang); struct rb_thread_struct; /* cont.c */ +struct rb_fiber_struct; VALUE rb_obj_is_fiber(VALUE); void rb_fiber_reset_root_local_storage(struct rb_thread_struct *); void ruby_register_rollback_func_for_ensure(VALUE (*ensure_func)(VALUE), VALUE (*rollback_func)(VALUE)); +void rb_fiber_init_mjit_cont(struct rb_fiber_struct *fiber); /* debug.c */ PRINTF_ARGS(void ruby_debug_printf(const char*, ...), 1, 2); |