diff options
Diffstat (limited to 'ext/digest')
-rw-r--r-- | ext/digest/lib/md5.rb | 17 | ||||
-rw-r--r-- | ext/digest/lib/sha1.rb | 17 |
2 files changed, 26 insertions, 8 deletions
diff --git a/ext/digest/lib/md5.rb b/ext/digest/lib/md5.rb index 1d05d7d04e..c399f2de1d 100644 --- a/ext/digest/lib/md5.rb +++ b/ext/digest/lib/md5.rb @@ -5,10 +5,19 @@ require 'digest/md5' -MD5 = Digest::MD5 +class MD5 < Digest::MD5 + class << self + alias orig_new new + def new(str = nil) + if str + orig_new.update(str) + else + orig_new + end + end -class MD5 - def self.md5(*args) - new(*args) + def md5(*args) + new(*args) + end end end diff --git a/ext/digest/lib/sha1.rb b/ext/digest/lib/sha1.rb index c4ac6f66ea..4446e12e8d 100644 --- a/ext/digest/lib/sha1.rb +++ b/ext/digest/lib/sha1.rb @@ -5,10 +5,19 @@ require 'digest/sha1' -SHA1 = Digest::SHA1 +class SHA1 < Digest::SHA1 + class << self + alias orig_new new + def new(str = nil) + if str + orig_new.update(str) + else + orig_new + end + end -class SHA1 - def self.sha1(*args) - new(*args) + def sha1(*args) + new(*args) + end end end |