mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* eval.c (rb_proc_arity): get rid of segfault for mere splat.
* gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
c703f58807
commit
e0648d6cf5
3 changed files with 8 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
|||
Fri Jun 16 01:41:00 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* eval.c (rb_proc_arity): get rid of segfault for mere splat.
|
||||
|
||||
* gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
|
||||
|
||||
Wed Jun 14 18:00:20 2006 Eric Hodel <drbrain@segment7.net>
|
||||
|
||||
* enum.c (enum_any): Documentation typo.
|
||||
|
|
2
eval.c
2
eval.c
|
@ -8530,7 +8530,7 @@ rb_proc_arity(VALUE proc)
|
|||
list = list->nd_next;
|
||||
}
|
||||
if (var->nd_args) {
|
||||
if (nd_type(var->nd_args) == NODE_POSTARG) {
|
||||
if (var->nd_args != (NODE *)-1 && nd_type(var->nd_args) == NODE_POSTARG) {
|
||||
return -n-1-var->nd_args->nd_head->nd_alen;
|
||||
}
|
||||
return -n-1;
|
||||
|
|
2
gc.c
2
gc.c
|
@ -794,6 +794,7 @@ gc_mark_children(VALUE ptr, int lev)
|
|||
case NODE_RESBODY:
|
||||
case NODE_CLASS:
|
||||
case NODE_ARGS:
|
||||
case NODE_BLOCK_PASS:
|
||||
gc_mark((VALUE)obj->as.node.u2.node, lev);
|
||||
/* fall through */
|
||||
case NODE_BLOCK: /* 1,3 */
|
||||
|
@ -833,7 +834,6 @@ gc_mark_children(VALUE ptr, int lev)
|
|||
case NODE_MODULE:
|
||||
case NODE_ALIAS:
|
||||
case NODE_VALIAS:
|
||||
case NODE_BLOCK_PASS:
|
||||
gc_mark((VALUE)obj->as.node.u1.node, lev);
|
||||
/* fall through */
|
||||
case NODE_METHOD: /* 2 */
|
||||
|
|
Loading…
Reference in a new issue