summaryrefslogtreecommitdiffhomepage
path: root/mrblib/io.rb
diff options
context:
space:
mode:
Diffstat (limited to 'mrblib/io.rb')
-rw-r--r--mrblib/io.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/mrblib/io.rb b/mrblib/io.rb
index 694fdb0c9..3ef9c7b5d 100644
--- a/mrblib/io.rb
+++ b/mrblib/io.rb
@@ -123,6 +123,10 @@ class IO
def write(string)
str = string.is_a?(String) ? string : string.to_s
return str.size unless str.size > 0
+ if 0 < @buf.length
+ # reset real pos ignore buf
+ seek(pos, SEEK_SET)
+ end
len = syswrite(str)
@pos += len
len