diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | io.c | 2 |
2 files changed, 6 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Wed May 26 13:14:52 2004 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (rb_io_init_copy): copy also positions. [ruby-talk:100910] + Wed May 26 00:00:00 2004 why the lucky stiff <why@ruby-lang.org> * ext/syck/syck.c (syck_new_parser): clear parser on init. @@ -3242,11 +3242,13 @@ rb_io_init_copy(dest, io) } fd = ruby_dup(fileno(orig->f)); fptr->f = rb_fdopen(fd, mode); + fseeko(fptr->f, ftello(orig->f), SEEK_SET); if (orig->f2) { if (fileno(orig->f) != fileno(orig->f2)) { fd = ruby_dup(fileno(orig->f2)); } fptr->f2 = rb_fdopen(fd, "w"); + fseeko(fptr->f2, ftello(orig->f2), SEEK_SET); } if (fptr->mode & FMODE_BINMODE) { rb_io_binmode(dest); |