From d3c072dfe70706842afd861ba2f4f866f3469a38 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 20 Feb 2004 10:11:25 +0000 Subject: * lib/ostruct.rb (OpenStruct#initialize_copy): should not share members. [ruby-dev:22966] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@5794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/ostruct.rb | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/ChangeLog b/ChangeLog index 8f1905765..c051e7feb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Feb 20 19:11:20 2004 Nobuyoshi Nakada + + * lib/ostruct.rb (OpenStruct#initialize_copy): should not share + members. [ruby-dev:22966] + Fri Feb 20 18:59:47 2004 Yukihiro Matsumoto * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to diff --git a/lib/ostruct.rb b/lib/ostruct.rb index 786bd4de2..b0bb77526 100644 --- a/lib/ostruct.rb +++ b/lib/ostruct.rb @@ -52,6 +52,12 @@ class OpenStruct end end + # Duplicate an OpenStruct object members. + def initialize_copy(orig) + super + @table = @table.dup + end + def method_missing(mid, *args) # :nodoc: mname = mid.id2name len = args.length -- cgit