Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
diff --git a/Lib/tarfile.py b/Lib/tarfile.py
index ae24291..7143f0b 100644
--- a/Lib/tarfile.py
+++ b/Lib/tarfile.py
@@ -2037,11 +2037,11 @@
# Set correct owner, mtime and filemode on directories.
for tarinfo in directories:
- path = os.path.join(path, tarinfo.name)
+ dirpath = os.path.join(path, tarinfo.name)
try:
- self.chown(tarinfo, path)
- self.utime(tarinfo, path)
- self.chmod(tarinfo, path)
+ self.chown(tarinfo, dirpath)
+ self.utime(tarinfo, dirpath)
+ self.chmod(tarinfo, dirpath)
except ExtractError, e:
if self.errorlevel > 1:
raise