summaryrefslogtreecommitdiff
path: root/io.c
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-13 09:16:32 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-13 09:16:32 +0000
commitdaac3ed0b4dea32d22728e0eb69ed5140ca6ad14 (patch)
treebc26a2ef8460f0239c6f513fbc358d88d05654c1 /io.c
parent552243aa152098835b82cddd5919585cd0b229d4 (diff)
* io.c (swallow): should use more_char() instead of fill_cbuf().
suggested by akr. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r--io.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/io.c b/io.c
index 4c481e59a6..985d65ae51 100644
--- a/io.c
+++ b/io.c
@@ -2296,7 +2296,6 @@ swallow(rb_io_t *fptr, int term)
if (NEED_READCONV(fptr)) {
rb_encoding *enc = io_read_encoding(fptr);
int needconv = rb_enc_mbminlen(enc) != 1;
- VALUE v;
make_readconv(fptr, 0);
do {
size_t cnt;
@@ -2315,10 +2314,7 @@ swallow(rb_io_t *fptr, int term)
}
io_shift_cbuf(fptr, (int)cnt - i, NULL);
}
- v = fill_cbuf(fptr, 0);
- if (v != MORE_CHAR_SUSPENDED && v != MORE_CHAR_FINISHED)
- rb_exc_raise(v);
- } while (v == MORE_CHAR_SUSPENDED);
+ } while (more_char(fptr) != MORE_CHAR_FINISHED);
return FALSE;
}