mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
merge revision(s) 49620: [Backport #10857]
* lib/resolv.rb (Resolv::DNS::Resource#==, #hash): elements returned by Kernel#instance_variables are Symbols now. [ruby-core:68128] [Bug #10857] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
eef3f0d94c
commit
00088b97ec
4 changed files with 31 additions and 4 deletions
|
@ -1,3 +1,9 @@
|
|||
Tue Feb 17 18:57:13 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* lib/resolv.rb (Resolv::DNS::Resource#==, #hash): elements
|
||||
returned by Kernel#instance_variables are Symbols now.
|
||||
[ruby-core:68128] [Bug #10857]
|
||||
|
||||
Tue Feb 17 15:39:01 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* ext/win32/lib/win32/registry.rb (Win32::Registry::API): use wide
|
||||
|
|
|
@ -1666,10 +1666,10 @@ class Resolv
|
|||
return false unless self.class == other.class
|
||||
s_ivars = self.instance_variables
|
||||
s_ivars.sort!
|
||||
s_ivars.delete "@ttl"
|
||||
s_ivars.delete :@ttl
|
||||
o_ivars = other.instance_variables
|
||||
o_ivars.sort!
|
||||
o_ivars.delete "@ttl"
|
||||
o_ivars.delete :@ttl
|
||||
return s_ivars == o_ivars &&
|
||||
s_ivars.collect {|name| self.instance_variable_get name} ==
|
||||
o_ivars.collect {|name| other.instance_variable_get name}
|
||||
|
@ -1682,7 +1682,7 @@ class Resolv
|
|||
def hash # :nodoc:
|
||||
h = 0
|
||||
vars = self.instance_variables
|
||||
vars.delete "@ttl"
|
||||
vars.delete :@ttl
|
||||
vars.each {|name|
|
||||
h ^= self.instance_variable_get(name).hash
|
||||
}
|
||||
|
|
21
test/resolv/test_resource.rb
Normal file
21
test/resolv/test_resource.rb
Normal file
|
@ -0,0 +1,21 @@
|
|||
require 'test/unit'
|
||||
require 'resolv'
|
||||
|
||||
class TestResolvResource < Test::Unit::TestCase
|
||||
def setup
|
||||
address = "192.168.0.1"
|
||||
@name1 = Resolv::DNS::Resource::IN::A.new(address)
|
||||
@name1.instance_variable_set(:@ttl, 100)
|
||||
@name2 = Resolv::DNS::Resource::IN::A.new(address)
|
||||
end
|
||||
|
||||
def test_equality
|
||||
bug10857 = '[ruby-core:68128] [Bug #10857]'
|
||||
assert_equal(@name1, @name2, bug10857)
|
||||
end
|
||||
|
||||
def test_hash
|
||||
bug10857 = '[ruby-core:68128] [Bug #10857]'
|
||||
assert_equal(@name1.hash, @name2.hash, bug10857)
|
||||
end
|
||||
end
|
|
@ -1,6 +1,6 @@
|
|||
#define RUBY_VERSION "2.2.0"
|
||||
#define RUBY_RELEASE_DATE "2015-02-17"
|
||||
#define RUBY_PATCHLEVEL 51
|
||||
#define RUBY_PATCHLEVEL 52
|
||||
|
||||
#define RUBY_RELEASE_YEAR 2015
|
||||
#define RUBY_RELEASE_MONTH 2
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue