summaryrefslogtreecommitdiff
path: root/ext/tk/lib/multi-tk.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/tk/lib/multi-tk.rb')
-rw-r--r--ext/tk/lib/multi-tk.rb10
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/tk/lib/multi-tk.rb b/ext/tk/lib/multi-tk.rb
index 49427575d2..dcbd37703e 100644
--- a/ext/tk/lib/multi-tk.rb
+++ b/ext/tk/lib/multi-tk.rb
@@ -197,7 +197,9 @@ class MultiTkIp
def _destroy_slaves_of_slaveIP(ip)
unless ip.deleted?
- ip._split_tklist(ip._invoke('interp', 'slaves')).each{|name|
+ # ip._split_tklist(ip._invoke('interp', 'slaves')).each{|name|
+ ip._split_tklist(ip._invoke_without_enc('interp', 'slaves')).each{|name|
+ name = _fromUTF8(name)
begin
# ip._eval_without_enc("#{name} eval {foreach i [after info] {after cancel $i}}")
after_ids = ip._eval_without_enc("#{name} eval {after info}")
@@ -2397,8 +2399,10 @@ class MultiTkIp
num_or_str(@interp._invoke('interp', 'limit', _slavearg(slave),
limit_type, slot))
else
- l = @interp._split_tklist(@interp._invoke('interp', 'limit',
- _slavearg(slave), limit_type))
+ l = @interp._split_tklist(@interp._invoke_without_enc('interp', 'limit',
+ _slavearg(slave),
+ limit_type))
+ l.map!{|s| _fromUTF8(s)}
r = {}
until l.empty?
key = l.shift[1..-1]