* method.c (rb_method_entry_t): body.proc should be marked.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2009-08-26 06:26:08 +00:00
Родитель ba7a870a89
Коммит 0c86e8b70b
2 изменённых файлов: 3 добавлений и 2 удалений

3
gc.c
Просмотреть файл

@ -1405,7 +1405,8 @@ mark_method_entry_i(ID key, const rb_method_entry_t *me, st_data_t data)
} }
static void 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; struct mark_tbl_arg arg;
if (!tbl) return; if (!tbl) return;
arg.objspace = objspace; arg.objspace = objspace;

Просмотреть файл

@ -59,7 +59,7 @@ typedef struct rb_method_entry_struct {
rb_iseq_t *iseq; /* should be mark */ rb_iseq_t *iseq; /* should be mark */
rb_method_cfunc_t cfunc; rb_method_cfunc_t cfunc;
ID attr_id; ID attr_id;
VALUE proc; VALUE proc; /* should be mark */
enum method_optimized_type { enum method_optimized_type {
OPTIMIZED_METHOD_TYPE_SEND, OPTIMIZED_METHOD_TYPE_SEND,
OPTIMIZED_METHOD_TYPE_CALL OPTIMIZED_METHOD_TYPE_CALL