]> granicus.if.org Git - python/commitdiff
Make sure that xstar headers are read correctly.
authorLars Gustäbel <lars@gustaebel.de>
Mon, 11 Feb 2008 19:17:10 +0000 (19:17 +0000)
committerLars Gustäbel <lars@gustaebel.de>
Mon, 11 Feb 2008 19:17:10 +0000 (19:17 +0000)
Lib/test/test_tarfile.py
Lib/test/testtar.tar

index d446d5fa2db3d2a777af5193fbdd40227fcc56d6..f0e755e869066a18ca8cda897d04b0fca111c079 100644 (file)
@@ -208,6 +208,15 @@ class MiscReadTest(ReadTest):
         self.assert_(tarinfo.type == tarfile.DIRTYPE,
                 "v7 dirtype failed")
 
+    def test_xstar_type(self):
+        # The xstar format stores extra atime and ctime fields inside the
+        # space reserved for the prefix field. The prefix field must be
+        # ignored in this case, otherwise it will mess up the name.
+        try:
+            self.tar.getmember("misc/regtype-xstar")
+        except KeyError:
+            self.fail("failed to find misc/regtype-xstar (mangled prefix?)")
+
     def test_check_members(self):
         for tarinfo in self.tar:
             self.assert_(int(tarinfo.mtime) == 07606136617,
index 3529bdf0acf5a1db9b1d494fda25422816ca00cc..b5bb46b16e682eb196c2eb4e7b9d3f69db916928 100644 (file)
Binary files a/Lib/test/testtar.tar and b/Lib/test/testtar.tar differ