From 2f5f428f7cc66f2f7756635ec909d047eeaf6629 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Fri, 29 Sep 2017 18:11:30 -0700 Subject: [PATCH] utarfile: skip: Optimize for memory usage. Propagated from upip_utarfile.py. --- utarfile/utarfile.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/utarfile/utarfile.py b/utarfile/utarfile.py index 0570faf5..65ce0bdc 100644 --- a/utarfile/utarfile.py +++ b/utarfile/utarfile.py @@ -39,7 +39,13 @@ class FileSection: return sz def skip(self): - self.f.read(self.content_len + self.align) + sz = self.content_len + self.align + if sz: + buf = bytearray(16) + while sz: + s = min(sz, 16) + self.f.readinto(buf, s) + sz -= s class TarInfo: