diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/tk/lib/tk.rb | 11 |
2 files changed, 15 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Thu Oct 7 17:36:25 2004 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp> + + * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns + a Fixnum for 2nd element (it's pid) of the return value. + Thu Oct 7 12:55:04 2004 Yukihiro Matsumoto <matz@ruby-lang.org> * io.c (io_read): should freeze buffer before thread context diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb index 0943e5406e..a5d2645e98 100644 --- a/ext/tk/lib/tk.rb +++ b/ext/tk/lib/tk.rb @@ -1614,7 +1614,16 @@ module Tk def Tk.errorCode INTERP._invoke_without_enc('global', 'errorCode') - tk_split_simplelist(INTERP._invoke_without_enc('set', 'errorCode')) + code = tk_split_simplelist(INTERP._invoke_without_enc('set', 'errorCode')) + case code[0] + when 'CHILDKILLED', 'CHILDSTATUS', 'CHILDSUSP' + begin + pid = Integer(code[1]) + code[1] = pid + rescue + end + end + code end def root |