From c10c777f177fd9aeaf4a85d3b75d607f167293fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20Barri=C3=A9?= Date: Tue, 6 Dec 2022 18:04:04 +0100 Subject: [PATCH] Initialize @rbuf_empty in BufferedIO --- lib/net/protocol.rb | 1 + test/net/protocol/test_protocol.rb | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb index f241681..aba6557 100644 --- a/lib/net/protocol.rb +++ b/lib/net/protocol.rb @@ -120,6 +120,7 @@ def initialize(io, read_timeout: 60, write_timeout: 60, continue_timeout: nil, d @continue_timeout = continue_timeout @debug_output = debug_output @rbuf = ''.b + @rbuf_empty = true @rbuf_offset = 0 end diff --git a/test/net/protocol/test_protocol.rb b/test/net/protocol/test_protocol.rb index d3dc2cc..397cc72 100644 --- a/test/net/protocol/test_protocol.rb +++ b/test/net/protocol/test_protocol.rb @@ -57,6 +57,14 @@ def mockio.write_nonblock(*strs, exception: true) mockio end + def test_readuntil + assert_output("", "") do + sio = StringIO.new("12345".dup) + io = Net::BufferedIO.new(sio) + assert_equal "12345", io.readuntil("5") + end + end + def test_write0_multibyte mockio = create_mockio(max: 1) io = Net::BufferedIO.new(mockio)