You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-python/lz4/files/lz4-3.1.3-310-readall.patch

33 lines
922 B

diff --git a/lz4/frame/__init__.py b/lz4/frame/__init__.py
index 5fa03ce..b77c425 100644
--- a/lz4/frame/__init__.py
+++ b/lz4/frame/__init__.py
@@ -617,6 +617,17 @@ class LZ4FrameFile(_compression.BaseStream):
# returns at least one byte (except at EOF)
return self._buffer.peek(size)
+ def readall(self):
+ chunks = bytearray()
+
+ while True:
+ data = self.read(io.DEFAULT_BUFFER_SIZE)
+ chunks += data
+ if not data:
+ break
+
+ return bytes(chunks)
+
def read(self, size=-1):
"""Read up to ``size`` uncompressed bytes from the file.
@@ -632,6 +643,9 @@ class LZ4FrameFile(_compression.BaseStream):
"""
self._check_can_read()
+
+ if size < 0 and sys.version_info >= (3, 10):
+ return self.readall()
return self._buffer.read(size)
def read1(self, size=-1):