8000 Fix fallback Unpacker.read() (#388) · eb-emilio/msgpack-python@f6f6f32 · GitHub
[go: up one dir, main page]

Skip to content

Commit f6f6f32

Browse files
authored
Fix fallback Unpacker.read() (msgpack#388)
Fixes msgpack#352.
1 parent 7a8ce0f commit f6f6f32

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

msgpack/fallback.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,9 @@ def _get_extradata(self):
357357
return self._buffer[self._buff_i :]
358358

359359
def read_bytes(self, n):
360-
return self._read(n)
360+
ret = self._read(n)
361+
self._consume()
362+
return ret
361363

362364
def _read(self, n):
363365
# (int) -> bytearray

test/test_sequnpack.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,15 @@ def test_readbytes():
9393
assert unpacker.unpack() == ord(b"a")
9494
assert unpacker.unpack() == ord(b"r")
9595

96+
# Issue 352
97+
u = Unpacker()
98+
u.feed(b"x")
99+
assert bytes(u.read_bytes(1)) == b"x"
100+
with raises(StopIteration):
101+
next(u)
102+
u.feed(b"\1")
103+
assert next(u) == 1
104+
96105

97106
def test_issue124():
98107
unpacker = Unpacker()

0 commit comments

Comments
 (0)
0