Skip to content

Commit c45de26

Browse files
committed
Small update
1 parent 1724acc commit c45de26

1 file changed

Lines changed: 21 additions & 13 deletions

File tree

pyarchivefile/pyarchivefile.py

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1325,21 +1325,14 @@ def AppendNullBytes(indata=None, delimiter=None):
13251325
def system_and_major():
13261326
info = platform.uname()
13271327

1328-
# Python 3: info is a namedtuple with .system / .release
1329-
# Python 2: info is a plain tuple (system, node, release, version, machine, processor)
1330-
try:
1331-
system = info.system
1332-
release = info.release
1333-
except AttributeError:
1334-
# Fallback for Python 2
1335-
system = info[0]
1336-
release = info[2]
1328+
system = info.system
1329+
release = info.release
13371330

13381331
# Find the first run of digits in the release string
1339-
m = re.search(r'\d+', release)
1332+
m = re.search(r"\d+", release)
13401333
if m:
1341-
major = m.group(0) # e.g. '11' or '6'
1342-
return u"%s%s" % (system, major) # unicode-safe in Py2
1334+
major = m.group(0)
1335+
return f"{system}{major}"
13431336
else:
13441337
return system
13451338

@@ -10043,6 +10036,21 @@ def BSDTarFileListFiles(infile, formatspecs=__file_format_multi_dict__, verbose=
1004310036
else:
1004410037
ffullmode = member.mode | stat.S_IFREG
1004510038
ftype = 0
10039+
fsize = 0
10040+
zero_length_types = {1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 13}
10041+
if ftype in zero_length_types:
10042+
fsize = 0
10043+
else:
10044+
if(member.size is None):
10045+
fcontents = MkTempFile()
10046+
if(hasattr(member, "get_blocks")):
10047+
for block in member.get_blocks():
10048+
fcontents.write(block)
10049+
elif(hasattr(member, "read")):
10050+
fcontents.write(member.read())
10051+
fsize = fcontents.tell()
10052+
else:
10053+
fsize = member.size
1004610054
if(not verbose):
1004710055
VerbosePrintOut(member.pathname)
1004810056
elif(verbose):
@@ -10070,7 +10078,7 @@ def BSDTarFileListFiles(infile, formatspecs=__file_format_multi_dict__, verbose=
1007010078
else:
1007110079
fgprint = "0"
1007210080
VerbosePrintOut(PrintPermissionString(ffullmode, ftype) + "\t" + str(fuprint) + "/" + str(fgprint) + "\t" + str(
10073-
member.size).rjust(15) + "\t" + datetime.datetime.fromtimestamp(member.mtime).strftime('%Y-%m-%d %H:%M') + "\t" + printfname)
10081+
fsize).rjust(15) + "\t" + datetime.datetime.fromtimestamp(member.mtime).strftime('%Y-%m-%d %H:%M') + "\t" + printfname)
1007410082
lcfi = lcfi + 1
1007510083
if(returnfp):
1007610084
return listarrayfiles['fp']

0 commit comments

Comments
 (0)