diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/digest/lib/md5.rb | 17 | ||||
-rw-r--r-- | ext/digest/lib/sha1.rb | 17 | ||||
-rw-r--r-- | ext/tk/sample/irbtkw.rbw | 7 |
3 files changed, 32 insertions, 9 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 diff --git a/ext/tk/sample/irbtkw.rbw b/ext/tk/sample/irbtkw.rbw index 92fa5692f2..f6a35be6ed 100644 --- a/ext/tk/sample/irbtkw.rbw +++ b/ext/tk/sample/irbtkw.rbw @@ -26,7 +26,11 @@ console.yscrollbar(TkScrollbar.new(top, :width=>10).pack(:before=>console, :side=>:right, :expand=>false, :fill=>:y)) -ev_loop = Thread.new{Tk.mainloop} +irb_thread = nil +ev_loop = Thread.new{ + Tk.mainloop + irb_thread.kill if irb_thread +} # window position control root = Tk.root @@ -116,4 +120,5 @@ console.bind('Control-c'){ irb_thread.join # exit +ev_thread.kill Tk.exit |