Skip to content

Commit c45adf1

Browse files
committed
Small update
1 parent d6d9c6e commit c45adf1

1 file changed

Lines changed: 23 additions & 15 deletions

File tree

pyneofile/pyneofile.py

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6687,45 +6687,49 @@ def AppendFilesWithContentFromBSDTarFileToList(infile, extradata=[], jsondata={}
66876687
fname = member.pathname
66886688
if(verbose):
66896689
VerbosePrintOut(fname)
6690-
fpremode = member.mode
6691-
ffullmode = member.mode
6690+
if(hasattr(member, "mode")):
6691+
fpremode = member.mode
6692+
ffullmode = member.mode
6693+
elif(hasattr(member, "perm")):
6694+
fpremode = member.perm
6695+
ffullmode = member.perm
66926696
flinkcount = 0
66936697
fblksize = format(int(0), 'x').lower()
66946698
fblocks = format(int(0), 'x').lower()
66956699
fflags = format(int(0), 'x').lower()
66966700
ftype = 0
66976701
if((hasattr(member, "isreg") and member.isreg) or member.isfile):
6698-
ffullmode = member.mode | stat.S_IFREG
6702+
ffullmode = ffullmode | stat.S_IFREG
66996703
ftype = 0
67006704
elif(member.islnk):
6701-
ffullmode = member.mode | stat.S_IFREG
6705+
ffullmode = ffullmode | stat.S_IFREG
67026706
ftype = 1
67036707
elif(member.issym):
6704-
ffullmode = member.mode | stat.S_IFLNK
6708+
ffullmode = ffullmode | stat.S_IFLNK
67056709
ftype = 2
67066710
elif(member.ischr):
6707-
ffullmode = member.mode | stat.S_IFCHR
6711+
ffullmode = ffullmode | stat.S_IFCHR
67086712
ftype = 3
67096713
elif(member.isblk):
6710-
ffullmode = member.mode | stat.S_IFBLK
6714+
ffullmode = ffullmode | stat.S_IFBLK
67116715
ftype = 4
67126716
elif(member.isdir):
6713-
ffullmode = member.mode | stat.S_IFDIR
6717+
ffullmode = ffullmode | stat.S_IFDIR
67146718
ftype = 5
67156719
elif(member.isfifo):
6716-
ffullmode = member.mode | stat.S_IFIFO
6720+
ffullmode = ffullmode | stat.S_IFIFO
67176721
ftype = 6
67186722
elif(hasattr(member, "issparse") and member.issparse):
6719-
ffullmode = member.mode | stat.S_IFREG
6723+
ffullmode = ffullmode | stat.S_IFREG
67206724
ftype = 12
67216725
elif(member.isdev):
6722-
ffullmode = member.mode
6726+
ffullmode = ffullmode
67236727
ftype = 14
67246728
elif(member.issock):
6725-
ffullmode = member.mode | stat.S_IFSOCK
6729+
ffullmode = ffullmode | stat.S_IFSOCK
67266730
ftype = 15
67276731
else:
6728-
ffullmode = member.mode | stat.S_IFREG
6732+
ffullmode = ffullmode | stat.S_IFREG
67296733
ftype = 0
67306734
flinkname = ""
67316735
fcurfid = format(int(curfid), 'x').lower()
@@ -10011,8 +10015,12 @@ def BSDTarFileListFiles(infile, formatspecs=__file_format_multi_dict__, verbose=
1001110015
with open_archive_reader(infile) as archive:
1001210016
for member in archive:
1001310017
returnval.update({lcfi: member.pathname})
10014-
fpremode = member.mode
10015-
ffullmode = member.mode
10018+
if(hasattr(member, "mode")):
10019+
fpremode = member.mode
10020+
ffullmode = member.mode
10021+
elif(hasattr(member, "perm")):
10022+
fpremode = member.perm
10023+
ffullmode = member.perm
1001610024
flinkcount = 0
1001710025
ftype = 0
1001810026
if((hasattr(member, "isreg") and member.isreg) or member.isfile):

0 commit comments

Comments
 (0)