diff options
-rw-r--r-- | io_buffer.c | 2 | ||||
-rw-r--r-- | test/ruby/test_io_buffer.rb | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/io_buffer.c b/io_buffer.c index 075a9bfb78..63f5bd2c24 100644 --- a/io_buffer.c +++ b/io_buffer.c @@ -1125,7 +1125,7 @@ io_buffer_get_string(int argc, VALUE *argv, VALUE self) size_t offset = 0; size_t length = data->size; - rb_encoding *encoding = NULL; + rb_encoding *encoding = rb_ascii8bit_encoding(); if (argc >= 1) { offset = NUM2SIZET(argv[0]); diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb index 0a8685d9d5..f2b9ca45e1 100644 --- a/test/ruby/test_io_buffer.rb +++ b/test/ruby/test_io_buffer.rb @@ -71,7 +71,10 @@ class TestIOBuffer < Test::Unit::TestCase def test_file_mapped buffer = File.open(__FILE__) {|file| IO::Buffer.map(file)} - assert_include buffer.get_string, "Hello World" + contents = buffer.get_string + + assert_include contents, "Hello World" + assert_equal Encoding::BINARY, contents.encoding end def test_file_mapped_invalid |