Issue #7357: No longer suppress fatal extraction errors by
default. TarFile's errorlevel argument controls how errors are handled that occur during extraction. There are three possible levels 0, 1 and 2. If errorlevel is set to 1 or 2 fatal errors (e.g. a full filesystem) are raised as exceptions. If it is set to 0, which is the default value, extraction errors are suppressed, and error messages are written to the debug log instead. But, if the debug log is not activated, which is the default as well, all these errors go unnoticed. The original intention was to imitate GNU tar which tries to extract as many members as possible instead of stopping on the first error. It turns out that this is no good default behaviour for a tar library. This patch simply changes the default value for the errorlevel argument from 0 to 1, so that fatal extraction errors are raised as EnvironmentError exceptions.
This commit is contained in:
parent
5f429e0227
commit
92ca7561bb
|
@ -1489,7 +1489,7 @@ class TarFile(object):
|
|||
ignore_zeros = False # If true, skips empty or invalid blocks and
|
||||
# continues processing.
|
||||
|
||||
errorlevel = 0 # If 0, fatal errors only appear in debug
|
||||
errorlevel = 1 # If 0, fatal errors only appear in debug
|
||||
# messages (if debug >= 0). If > 0, errors
|
||||
# are passed to the caller as exceptions.
|
||||
|
||||
|
|
Loading…
Reference in New Issue