summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-04 22:59:25 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-04 22:59:25 +0000
commit4433defb46f2324baef5a9a2e1b7b40a0391ea5d (patch)
tree3f723e81d969455e69ed40bcc71b3c86a856209a
parent8e864d1e8628a99a2187044f5c987f802dee6ab0 (diff)
* io.c (io_binwrite): arg.offset should be updated after retry.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--io.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index ed75ef4b75..5f9b2667a4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Fri Dec 5 07:58:30 2008 Tanaka Akira <akr@fsij.org>
+
+ * io.c (io_binwrite): arg.offset should be updated after retry.
+
Fri Dec 5 03:29:17 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* load.c (rb_get_load_path): returns the load path without
diff --git a/io.c b/io.c
index 13da5bba3b..a9210f569c 100644
--- a/io.c
+++ b/io.c
@@ -795,8 +795,8 @@ io_binwrite(VALUE str, rb_io_t *fptr, int nosync)
}
arg.fptr = fptr;
arg.str = str;
- arg.offset = offset;
retry:
+ arg.offset = offset;
arg.length = n;
if (fptr->write_lock) {
r = rb_mutex_synchronize(fptr->write_lock, io_binwrite_string, (VALUE)&arg);