Skip to content

Commit d7ed566

Browse files
committed
Small update
1 parent ea5d574 commit d7ed566

1 file changed

Lines changed: 11 additions & 11 deletions

File tree

pycatfile/pyfile.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import json
2727
import stat
2828
import shutil
29+
import base64
2930
import logging
3031
import zipfile
3132
import platform
@@ -83,20 +84,14 @@
8384

8485
# TAR file checking
8586
try:
86-
from xtarfile import is_tarfile
87+
from safetar import is_tarfile
8788
except ImportError:
88-
try:
89-
from safetar import is_tarfile
90-
except ImportError:
91-
from tarfile import is_tarfile
89+
from tarfile import is_tarfile
9290

9391
# TAR file module
9492
try:
95-
import xtarfile as tarfile
93+
import safetar as tarfile
9694
except ImportError:
97-
try:
98-
import safetar as tarfile
99-
except ImportError:
10095
import tarfile
10196

10297
try:
@@ -1816,7 +1811,7 @@ def CheckCompressionType(infile, formatspecs=__file_format_multi_dict__, filesta
18161811
if(prefp == binascii.unhexlify("7061785f676c6f62616c")):
18171812
filetype = "tarfile"
18181813
fp.seek(curloc, 0)
1819-
if(filetype == "gzip" or filetype == "bzip2" or filetype == "lzma" or filetype == "zstd" or filetype == "lz4" or filetype == "zlib"):
1814+
if(filetype == "gzip" or filetype == "bzip2" or filetype == "lzma" or filetype == "xz" or filetype == "zstd" or filetype == "lz4" or filetype == "zlib"):
18201815
if(TarFileCheck(fp)):
18211816
filetype = "tarfile"
18221817
elif(not filetype):
@@ -1857,7 +1852,7 @@ def CheckCompressionSubType(infile, formatspecs=__file_format_multi_dict__, file
18571852
compresscheck = "zlib"
18581853
else:
18591854
return False
1860-
if(compresscheck == "gzip" or compresscheck == "bzip2" or compresscheck == "lzma" or compresscheck == "zstd" or compresscheck == "lz4" or compresscheck == "zlib"):
1855+
if(compresscheck == "gzip" or compresscheck == "bzip2" or compresscheck == "lzma" or compresscheck == "xz" or compresscheck == "zstd" or compresscheck == "lz4" or compresscheck == "zlib"):
18611856
if(TarFileCheck(infile)):
18621857
filetype = "tarfile"
18631858
elif(not compresscheck):
@@ -6237,6 +6232,11 @@ def AppendFilesWithContentFromTarFileToList(infile, extradata=[], jsondata={}, c
62376232
fcontents = MkTempFile()
62386233
fcencoding = "UTF-8"
62396234
curcompression = "none"
6235+
pax_headers = getattr(member, "pax_headers", None)
6236+
if(not pax_headers):
6237+
pax_headers = None
6238+
if(pax_headers is not None):
6239+
jsondata.update({'pax_headers': pax_headers})
62406240
if ftype in data_types:
62416241
fpc = tarfp.extractfile(member)
62426242
shutil.copyfileobj(fpc, fcontents, length=__filebuff_size__)

0 commit comments

Comments
 (0)