fix visibility of SecureRandom.gen_random

Aliasing a method preserves its visibility.  These aliases turn
formerly-public methods into private.  Should make them public
again.  [Bug #15847]
This commit is contained in:
Urabe, Shyouhei 2019-05-14 11:44:20 +09:00
Родитель af1f3f131f
Коммит 5bab1304af
2 изменённых файлов: 9 добавлений и 0 удалений

Просмотреть файл

@ -85,6 +85,7 @@ module SecureRandom
class << self
remove_method :gen_random
alias gen_random gen_random_openssl
public :gen_random
end
end
return gen_random(n)
@ -94,6 +95,7 @@ module SecureRandom
class << self
remove_method :gen_random
alias gen_random gen_random_urandom
public :gen_random
end
end
return gen_random(n)

Просмотреть файл

@ -184,4 +184,11 @@ end
assert_equal(idx, @it.send(:gen_random_openssl, idx).size)
end
end
def test_repeated_gen_random
assert_nothing_raised NoMethodError, '[ruby-core:92633] [Bug #15847]' do
@it.gen_random(1)
@it.gen_random(1)
end
end
end