Skip to content

Commit 968efea

Browse files
committed
Update pyarchivefile.py
1 parent faebf0d commit 968efea

File tree

1 file changed

+42
-39
lines changed

1 file changed

+42
-39
lines changed

pyarchivefile.py

Lines changed: 42 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -10754,7 +10754,7 @@ def RePackArchiveFile(infile, outfile, fmttype="auto", compression="auto", compr
1075410754
if isinstance(infile, dict):
1075510755
listarrayfileslist = [infile]
1075610756
elif isinstance(infile, list):
10757-
pass
10757+
listarrayfileslist = infile
1075810758
else:
1075910759
if (infile != "-" and not isinstance(infile, bytes_type) # bytes is str on Py2
1076010760
and not hasattr(infile, "read") and not hasattr(infile, "write")):
@@ -11403,49 +11403,52 @@ def ArchiveFileListFiles(infile, fmttype="auto", filestart=0, seekstart=0, seeke
1140311403
if(verbose):
1140411404
logging.basicConfig(format="%(message)s", stream=sys.stdout, level=logging.DEBUG)
1140511405
if(isinstance(infile, dict)):
11406-
listarrayfiles = infile
11406+
listarrayfileslist = [infile]
11407+
if(isinstance(infile, list)):
11408+
listarrayfileslist = infile
1140711409
else:
1140811410
if(infile != "-" and not hasattr(infile, "read") and not hasattr(infile, "write") and not (sys.version_info[0] >= 3 and isinstance(infile, bytes))):
1140911411
infile = RemoveWindowsPath(infile)
11410-
listarrayfiles = ArchiveFileToArray(infile, fmttype, filestart, seekstart, seekend, True, False, False, skipchecksum, formatspecs, seektoend, returnfp)
11411-
if(not listarrayfiles):
11412+
listarrayfileslist = ArchiveFileToArray(infile, fmttype, filestart, seekstart, seekend, True, False, False, skipchecksum, formatspecs, seektoend, returnfp)
11413+
if(not listarrayfileslist):
1141211414
return False
11413-
lenlist = len(listarrayfiles['ffilelist'])
11414-
fnumfiles = int(listarrayfiles['fnumfiles'])
11415-
lcfi = 0
11416-
lcfx = int(listarrayfiles['fnumfiles'])
11417-
if(lenlist > listarrayfiles['fnumfiles'] or lenlist < listarrayfiles['fnumfiles']):
11418-
lcfx = int(lenlist)
11419-
else:
11415+
for listarrayfiles in listarrayfileslist:
11416+
lenlist = len(listarrayfiles['ffilelist'])
11417+
fnumfiles = int(listarrayfiles['fnumfiles'])
11418+
lcfi = 0
1142011419
lcfx = int(listarrayfiles['fnumfiles'])
11421-
returnval = {}
11422-
while(lcfi < lcfx):
11423-
returnval.update({lcfi: listarrayfiles['ffilelist'][lcfi]['fname']})
11424-
if(not verbose):
11425-
VerbosePrintOut(listarrayfiles['ffilelist'][lcfi]['fname'])
11426-
if(verbose):
11427-
permissions = {'access': {'0': ('---'), '1': ('--x'), '2': ('-w-'), '3': ('-wx'), '4': (
11428-
'r--'), '5': ('r-x'), '6': ('rw-'), '7': ('rwx')}, 'roles': {0: 'owner', 1: 'group', 2: 'other'}}
11429-
printfname = listarrayfiles['ffilelist'][lcfi]['fname']
11430-
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 1):
11431-
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11432-
" link to " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11433-
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 2):
11434-
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11435-
" -> " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11436-
fuprint = listarrayfiles['ffilelist'][lcfi]['funame']
11437-
if(len(fuprint) <= 0):
11438-
fuprint = listarrayfiles['ffilelist'][lcfi]['fuid']
11439-
fgprint = listarrayfiles['ffilelist'][lcfi]['fgname']
11440-
if(len(fgprint) <= 0):
11441-
fgprint = listarrayfiles['ffilelist'][lcfi]['fgid']
11442-
if(newstyle):
11443-
VerbosePrintOut(ftype_to_str(listarrayfiles['ffilelist'][lcfi]['ftype']) + "\t" + listarrayfiles['ffilelist'][lcfi]['fcompression'] + "\t" + str(
11444-
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + "\t" + printfname)
11445-
else:
11446-
VerbosePrintOut(PrintPermissionString(listarrayfiles['ffilelist'][lcfi]['fmode'], listarrayfiles['ffilelist'][lcfi]['ftype']) + " " + str(fuprint) + "/" + str(fgprint) + " " + str(
11447-
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + " " + datetime.datetime.utcfromtimestamp(listarrayfiles['ffilelist'][lcfi]['fmtime']).strftime('%Y-%m-%d %H:%M') + " " + printfname)
11448-
lcfi = lcfi + 1
11420+
if(lenlist > listarrayfiles['fnumfiles'] or lenlist < listarrayfiles['fnumfiles']):
11421+
lcfx = int(lenlist)
11422+
else:
11423+
lcfx = int(listarrayfiles['fnumfiles'])
11424+
returnval = {}
11425+
while(lcfi < lcfx):
11426+
returnval.update({lcfi: listarrayfiles['ffilelist'][lcfi]['fname']})
11427+
if(not verbose):
11428+
VerbosePrintOut(listarrayfiles['ffilelist'][lcfi]['fname'])
11429+
if(verbose):
11430+
permissions = {'access': {'0': ('---'), '1': ('--x'), '2': ('-w-'), '3': ('-wx'), '4': (
11431+
'r--'), '5': ('r-x'), '6': ('rw-'), '7': ('rwx')}, 'roles': {0: 'owner', 1: 'group', 2: 'other'}}
11432+
printfname = listarrayfiles['ffilelist'][lcfi]['fname']
11433+
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 1):
11434+
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11435+
" link to " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11436+
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 2):
11437+
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11438+
" -> " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11439+
fuprint = listarrayfiles['ffilelist'][lcfi]['funame']
11440+
if(len(fuprint) <= 0):
11441+
fuprint = listarrayfiles['ffilelist'][lcfi]['fuid']
11442+
fgprint = listarrayfiles['ffilelist'][lcfi]['fgname']
11443+
if(len(fgprint) <= 0):
11444+
fgprint = listarrayfiles['ffilelist'][lcfi]['fgid']
11445+
if(newstyle):
11446+
VerbosePrintOut(ftype_to_str(listarrayfiles['ffilelist'][lcfi]['ftype']) + "\t" + listarrayfiles['ffilelist'][lcfi]['fcompression'] + "\t" + str(
11447+
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + "\t" + printfname)
11448+
else:
11449+
VerbosePrintOut(PrintPermissionString(listarrayfiles['ffilelist'][lcfi]['fmode'], listarrayfiles['ffilelist'][lcfi]['ftype']) + " " + str(fuprint) + "/" + str(fgprint) + " " + str(
11450+
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + " " + datetime.datetime.utcfromtimestamp(listarrayfiles['ffilelist'][lcfi]['fmtime']).strftime('%Y-%m-%d %H:%M') + " " + printfname)
11451+
lcfi = lcfi + 1
1144911452
if(returnfp):
1145011453
return listarrayfiles['fp']
1145111454
else:

0 commit comments

Comments
 (0)