summaryrefslogtreecommitdiff
path: root/vm_trace.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-08 05:35:46 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-08 05:35:46 +0000
commit8634e62a621fc50ffb29344425a558115bebd3bc (patch)
treea7936f208bbc4ae1500e6069324dd234e82735b5 /vm_trace.c
parenta74d08b957b9896e69bde1c9f571fdc5022fbdfb (diff)
initialize VM postponed_job first. [Bug #15288]
* inits.c: call `Init_vm_postponed_job` first because postponed_job is used by transient heap. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_trace.c')
-rw-r--r--vm_trace.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/vm_trace.c b/vm_trace.c
index 54aa34f8d2..f5e2c921d3 100644
--- a/vm_trace.c
+++ b/vm_trace.c
@@ -1470,8 +1470,6 @@ tracepoint_stat_s(VALUE self)
return stat;
}
-static void Init_postponed_job(void);
-
/* This function is called from inits.c */
void
Init_vm_trace(void)
@@ -1566,10 +1564,6 @@ Init_vm_trace(void)
rb_define_method(rb_cTracePoint, "raised_exception", tracepoint_attr_raised_exception, 0);
rb_define_singleton_method(rb_cTracePoint, "stat", tracepoint_stat_s, 0);
-
- /* initialized for postponed job */
-
- Init_postponed_job();
}
typedef struct rb_postponed_job_struct {
@@ -1580,8 +1574,8 @@ typedef struct rb_postponed_job_struct {
#define MAX_POSTPONED_JOB 1000
#define MAX_POSTPONED_JOB_SPECIAL_ADDITION 24
-static void
-Init_postponed_job(void)
+void
+Init_vm_postponed_job(void)
{
rb_vm_t *vm = GET_VM();
vm->postponed_job_buffer = ALLOC_N(rb_postponed_job_t, MAX_POSTPONED_JOB);