From 91e1c13f1198414341f9c30ec1d7f90064b95143 Mon Sep 17 00:00:00 2001 From: marcandre Date: Tue, 29 Dec 2009 02:21:11 +0000 Subject: [PATCH] * lib/delegate.rb (marshal_dump/load): Revert r26122, r26194, as per Nobu. [ruby-core:24211] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@26196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/delegate.rb | 18 ++++-------------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index 73a48b7521..a49a38df64 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Dec 29 11:20:41 2009 Marc-Andre Lafortune + + * lib/delegate.rb (marshal_dump/load): Revert r26122, r26194, as per + Nobu. [ruby-core:24211] + Tue Dec 29 10:36:23 2009 Nobuyoshi Nakada * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::STANDALONE): diff --git a/lib/delegate.rb b/lib/delegate.rb index 9ed1409ba0..43549946c9 100644 --- a/lib/delegate.rb +++ b/lib/delegate.rb @@ -178,22 +178,12 @@ class Delegator # Serialization support for the object returned by \_\_getobj\_\_. def marshal_dump - [ - :__v2__, - instance_variables, - instance_variables.map{|var| instance_variable_get(var)}, - __getobj__ - ] + __getobj__ end # Reinitializes delegation from a serialized object. - def marshal_load(data) - version, vars, values, obj = data - if version == :__v2__ - vars.each_with_index{|var, i| instance_variable_set(var, values[i])} - __setobj__(obj) - else - __setobj__(data) - end + def marshal_load(obj) + initialize_methods(obj) + __setobj__(obj) end end