From 4f7b595815bd75706c276b03c8d445748e869f2e Mon Sep 17 00:00:00 2001 From: "U.Nakamura" Date: Mon, 6 Nov 2023 20:18:14 +0900 Subject: merge revision(s) 19346c2336053b351673da030b00c704138252d8: [Backport #19754] [Bug #19754] Make `IO::Buffer#get_string` check `offset` range (#8016) --- io_buffer.c | 3 +++ test/ruby/test_io_buffer.rb | 8 ++++++++ 2 files changed, 11 insertions(+) --- test/ruby/test_io_buffer.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb index fdfea00dfe..c1034efe34 100644 --- a/test/ruby/test_io_buffer.rb +++ b/test/ruby/test_io_buffer.rb @@ -227,6 +227,14 @@ class TestIOBuffer < Test::Unit::TestCase chunk = buffer.get_string(0, message.bytesize, Encoding::BINARY) assert_equal Encoding::BINARY, chunk.encoding + + assert_raise_with_message(ArgumentError, /exceeds buffer size/) do + buffer.get_string(0, 129) + end + + assert_raise_with_message(ArgumentError, /exceeds buffer size/) do + buffer.get_string(129) + end end # We check that values are correctly round tripped. -- cgit v1.2.3