mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* io.c (read_all): block string buffer modification during
rb_io_fread() by freezing it temporarily. [ruby-dev:24479] * dir.c (rb_push_glob): block call at once the end of method. [ruby-dev:24487] * ext/enumerator/enumerator.c (enum_each_slice): remove rb_gc_force_recycle() to prevent potential SEGV. [ruby-dev:24499] * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string buffer by clearing klass. [ruby-dev:24510] * ext/socket/socket.c (sock_s_getservbyaname): protocol string might be altered. [ruby-dev:24503] * string.c (rb_str_upto): check if return value from succ is a string. [ruby-dev:24504] * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to avoid mode string modification. [ruby-dev:24454] * io.c (rb_io_getline_fast): should take delim as unsigned char to distinguish EOF and '\377'. [ruby-dev:24460] * io.c (rb_io_getline): add check for RS modification. [ruby-dev:24461] * enum.c (enum_sort_by): use qsort() directly instead using rb_iterate(). [ruby-dev:24462] * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to prevent access to recycled object (via continuation for example). [ruby-dev:24463] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
c0700eba8d
commit
1057902ac7
19 changed files with 126 additions and 124 deletions
|
@ -75,6 +75,11 @@ class SimpleDelegator<Delegator
|
|||
def __setobj__(obj)
|
||||
@_sd_obj = obj
|
||||
end
|
||||
|
||||
def initialize_copy(obj)
|
||||
super
|
||||
__setobj__(obj.__getobj__.clone)
|
||||
end
|
||||
end
|
||||
|
||||
# backward compatibility ^_^;;;
|
||||
|
@ -103,6 +108,10 @@ def DelegateClass(superclass)
|
|||
def __setobj__(obj)
|
||||
@_dc_obj = obj
|
||||
end
|
||||
def initialize_copy(obj)
|
||||
super
|
||||
__setobj__(obj.__getobj__.clone)
|
||||
end
|
||||
}
|
||||
for method in methods
|
||||
begin
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue