summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--io.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1bf237a264..daabcadbe0 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 eb954f22f3..320950ed97 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);