diff --git a/Lib/tarfile.py b/Lib/tarfile.py --- a/Lib/tarfile.py +++ b/Lib/tarfile.py @@ -179,7 +179,12 @@ n = -(256 ** (len(s) - 1) - n) else: try: - n = int(nts(s, "ascii", "strict") or "0", 8) + u = nts(s, 'ascii', 'strict') + # Treat space as a terminating chaacter + u = u.lstrip(' ') + if ' ' in u: + u, _, _ = u.partition(' ') + n = int(u or "0", 8) except ValueError: raise InvalidHeaderError("invalid header") return n