summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-12 14:03:46 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-12 14:03:46 +0000
commit94e2ea375aba171fbf92d9f4b9fad1e53258497b (patch)
tree69f3c49fa2fb53619943ca75f5d86c108b988488
parentc00af0ef1d6ab226c94aa8a618b1860b183d25b2 (diff)
downloadruby-94e2ea375aba171fbf92d9f4b9fad1e53258497b.tar.gz
ruby-94e2ea375aba171fbf92d9f4b9fad1e53258497b.tar.xz
ruby-94e2ea375aba171fbf92d9f4b9fad1e53258497b.zip
merges r22902 from trunk into ruby_1_9_1.
-- * io.c (copy_stream_fallback_body): off_t may be larger than long. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_1@23185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--io.c4
2 files changed, 5 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 47d468fc8..7ffd9a1f8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,6 @@
-Thu Mar 12 05:19:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+Thu Mar 12 05:22:50 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * io.c (copy_stream_fallback_body): off_t may be larger than long.
* iseq.c (rb_iseq_disasm): RSTRING_LEN() returns long.
diff --git a/io.c b/io.c
index e3b628156..a043573a6 100644
--- a/io.c
+++ b/io.c
@@ -7616,7 +7616,7 @@ copy_stream_fallback_body(VALUE arg)
const int buflen = 16*1024;
VALUE n;
VALUE buf = rb_str_buf_new(buflen);
- long rest = stp->copy_length;
+ off_t rest = stp->copy_length;
off_t off = stp->src_offset;
ID read_method = id_readpartial;
@@ -7635,7 +7635,7 @@ copy_stream_fallback_body(VALUE arg)
else {
if (rest == 0)
break;
- l = buflen < rest ? buflen : rest;
+ l = buflen < rest ? buflen : (long)rest;
}
if (stp->src_fd == -1) {
rb_funcall(stp->src, read_method, 2, INT2FIX(l), buf);