summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-08-26 06:26:08 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-08-26 06:26:08 +0000
commit80d6510a1a2da53a65d83652699d4b21e12b6531 (patch)
treef75f518c85036fcf077835d58fed6ae709378bdb
parent86e04dc49d46ec6433b25280905cbd8eba388365 (diff)
downloadruby-80d6510a1a2da53a65d83652699d4b21e12b6531.tar.gz
ruby-80d6510a1a2da53a65d83652699d4b21e12b6531.tar.xz
ruby-80d6510a1a2da53a65d83652699d4b21e12b6531.zip
* method.c (rb_method_entry_t): body.proc should be marked.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@24664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--gc.c3
-rw-r--r--method.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/gc.c b/gc.c
index 5067d8fe0..113e13d51 100644
--- a/gc.c
+++ b/gc.c
@@ -1405,7 +1405,8 @@ mark_method_entry_i(ID key, const rb_method_entry_t *me, st_data_t data)
}
static void
-mark_m_tbl(rb_objspace_t *objspace, st_table *tbl, int lev) {
+mark_m_tbl(rb_objspace_t *objspace, st_table *tbl, int lev)
+{
struct mark_tbl_arg arg;
if (!tbl) return;
arg.objspace = objspace;
diff --git a/method.h b/method.h
index 6032d572d..0185c059b 100644
--- a/method.h
+++ b/method.h
@@ -59,7 +59,7 @@ typedef struct rb_method_entry_struct {
rb_iseq_t *iseq; /* should be mark */
rb_method_cfunc_t cfunc;
ID attr_id;
- VALUE proc;
+ VALUE proc; /* should be mark */
enum method_optimized_type {
OPTIMIZED_METHOD_TYPE_SEND,
OPTIMIZED_METHOD_TYPE_CALL