* marshal.c (w_object): should pass "weak" value to next level.
[ruby-dev:21496] * eval.c (proc_alloc): should not use cached object if klass is different. [ruby-talk:83685] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
4fca6e91dc
commit
56235e083d
@ -1,3 +1,11 @@
|
|||||||
|
Mon Oct 6 09:19:54 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
|
* marshal.c (w_object): should pass "weak" value to next level.
|
||||||
|
[ruby-dev:21496]
|
||||||
|
|
||||||
|
* eval.c (proc_alloc): should not use cached object if klass is
|
||||||
|
different. [ruby-talk:83685]
|
||||||
|
|
||||||
Sun Oct 5 23:27:09 2003 Tanaka Akira <akr@m17n.org>
|
Sun Oct 5 23:27:09 2003 Tanaka Akira <akr@m17n.org>
|
||||||
|
|
||||||
* lib/pathname.rb: version information is added in document.
|
* lib/pathname.rb: version information is added in document.
|
||||||
|
2
eval.c
2
eval.c
@ -6928,7 +6928,7 @@ proc_alloc(klass, proc)
|
|||||||
rb_warn("tried to create Proc object without a block");
|
rb_warn("tried to create Proc object without a block");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!proc && ruby_block->block_obj) {
|
if (!proc && ruby_block->block_obj && CLASS_OF(ruby_block->block_obj) == klass) {
|
||||||
return ruby_block->block_obj;
|
return ruby_block->block_obj;
|
||||||
}
|
}
|
||||||
block = Data_Make_Struct(klass, struct BLOCK, blk_mark, blk_free, data);
|
block = Data_Make_Struct(klass, struct BLOCK, blk_mark, blk_free, data);
|
||||||
|
@ -934,7 +934,7 @@ static: $(STATIC_LIB)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
ensure
|
ensure
|
||||||
mfile.close
|
mfile.close if mfile
|
||||||
end
|
end
|
||||||
|
|
||||||
def init_mkmf(config = CONFIG)
|
def init_mkmf(config = CONFIG)
|
||||||
|
@ -439,7 +439,7 @@ w_object(obj, arg, limit, weak)
|
|||||||
limit--;
|
limit--;
|
||||||
c_arg.limit = limit;
|
c_arg.limit = limit;
|
||||||
c_arg.arg = arg;
|
c_arg.arg = arg;
|
||||||
c_arg.weak = Qfalse;
|
c_arg.weak = weak;
|
||||||
|
|
||||||
if (ivtbl = rb_generic_ivar_table(obj)) {
|
if (ivtbl = rb_generic_ivar_table(obj)) {
|
||||||
w_byte(TYPE_IVAR, arg);
|
w_byte(TYPE_IVAR, arg);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user