New submission from mxmlnkn <maxinator...@googlemail.com>:
Normally, when opening an existing non-TAR file, e.g., a file with random data, an exception is raised: tarfile.open( "foo.txt" ) --------------------------------------------------------------------------- ReadError Traceback (most recent call last) <ipython-input-53-aa60172c3e3b> in <module>() ----> 1 f = tarfile.open( "notes.txt", ignore_zeros = False ) /usr/lib/python3.7/tarfile.py in open(cls, name, mode, fileobj, bufsize, **kwargs) 1576 fileobj.seek(saved_pos) 1577 continue -> 1578 raise ReadError("file could not be opened successfully") 1579 1580 elif ":" in mode: ReadError: file could not be opened successfully However, when specifying ignore_zeros = True, this check against invalid data seems to be turned off. Note that it is >invalid< data not >zero< data and therefore should still raise an exception! tarfile.open( "foo.txt", ignore_zeros = True ) Iterating over that opened tarfile also works without exception however nothing will be iterated over, i.e., it behaves like an empty TAR instead of like an invalid TAR. ---------- components: Library (Lib) messages: 369816 nosy: mxmlnkn priority: normal severity: normal status: open title: tarfile: ignore_zeros = True won't raise exception even on invalid (non-zero) TARs type: behavior versions: Python 3.7 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue40757> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com