Skip to content

Commit f6b26fc

Browse files
committed
Update pycatfile.py
1 parent b227fc8 commit f6b26fc

1 file changed

Lines changed: 42 additions & 39 deletions

File tree

pycatfile.py

Lines changed: 42 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -10761,7 +10761,7 @@ def RePackCatFile(infile, outfile, fmttype="auto", compression="auto", compressw
1076110761
if isinstance(infile, dict):
1076210762
listarrayfileslist = [infile]
1076310763
elif isinstance(infile, list):
10764-
pass
10764+
listarrayfileslist = infile
1076510765
else:
1076610766
if (infile != "-" and not isinstance(infile, bytes_type) # bytes is str on Py2
1076710767
and not hasattr(infile, "read") and not hasattr(infile, "write")):
@@ -11410,49 +11410,52 @@ def CatFileListFiles(infile, fmttype="auto", filestart=0, seekstart=0, seekend=0
1141011410
if(verbose):
1141111411
logging.basicConfig(format="%(message)s", stream=sys.stdout, level=logging.DEBUG)
1141211412
if(isinstance(infile, dict)):
11413-
listarrayfiles = infile
11413+
listarrayfileslist = [infile]
11414+
if(isinstance(infile, list)):
11415+
listarrayfileslist = infile
1141411416
else:
1141511417
if(infile != "-" and not hasattr(infile, "read") and not hasattr(infile, "write") and not (sys.version_info[0] >= 3 and isinstance(infile, bytes))):
1141611418
infile = RemoveWindowsPath(infile)
11417-
listarrayfiles = CatFileToArray(infile, fmttype, filestart, seekstart, seekend, True, False, False, skipchecksum, formatspecs, seektoend, returnfp)
11418-
if(not listarrayfiles):
11419+
listarrayfileslist = ArchiveFileToArray(infile, fmttype, filestart, seekstart, seekend, True, False, False, skipchecksum, formatspecs, seektoend, returnfp)
11420+
if(not listarrayfileslist):
1141911421
return False
11420-
lenlist = len(listarrayfiles['ffilelist'])
11421-
fnumfiles = int(listarrayfiles['fnumfiles'])
11422-
lcfi = 0
11423-
lcfx = int(listarrayfiles['fnumfiles'])
11424-
if(lenlist > listarrayfiles['fnumfiles'] or lenlist < listarrayfiles['fnumfiles']):
11425-
lcfx = int(lenlist)
11426-
else:
11422+
for listarrayfiles in listarrayfileslist:
11423+
lenlist = len(listarrayfiles['ffilelist'])
11424+
fnumfiles = int(listarrayfiles['fnumfiles'])
11425+
lcfi = 0
1142711426
lcfx = int(listarrayfiles['fnumfiles'])
11428-
returnval = {}
11429-
while(lcfi < lcfx):
11430-
returnval.update({lcfi: listarrayfiles['ffilelist'][lcfi]['fname']})
11431-
if(not verbose):
11432-
VerbosePrintOut(listarrayfiles['ffilelist'][lcfi]['fname'])
11433-
if(verbose):
11434-
permissions = {'access': {'0': ('---'), '1': ('--x'), '2': ('-w-'), '3': ('-wx'), '4': (
11435-
'r--'), '5': ('r-x'), '6': ('rw-'), '7': ('rwx')}, 'roles': {0: 'owner', 1: 'group', 2: 'other'}}
11436-
printfname = listarrayfiles['ffilelist'][lcfi]['fname']
11437-
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 1):
11438-
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11439-
" link to " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11440-
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 2):
11441-
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11442-
" -> " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11443-
fuprint = listarrayfiles['ffilelist'][lcfi]['funame']
11444-
if(len(fuprint) <= 0):
11445-
fuprint = listarrayfiles['ffilelist'][lcfi]['fuid']
11446-
fgprint = listarrayfiles['ffilelist'][lcfi]['fgname']
11447-
if(len(fgprint) <= 0):
11448-
fgprint = listarrayfiles['ffilelist'][lcfi]['fgid']
11449-
if(newstyle):
11450-
VerbosePrintOut(ftype_to_str(listarrayfiles['ffilelist'][lcfi]['ftype']) + "\t" + listarrayfiles['ffilelist'][lcfi]['fcompression'] + "\t" + str(
11451-
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + "\t" + printfname)
11452-
else:
11453-
VerbosePrintOut(PrintPermissionString(listarrayfiles['ffilelist'][lcfi]['fmode'], listarrayfiles['ffilelist'][lcfi]['ftype']) + " " + str(fuprint) + "/" + str(fgprint) + " " + str(
11454-
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + " " + datetime.datetime.utcfromtimestamp(listarrayfiles['ffilelist'][lcfi]['fmtime']).strftime('%Y-%m-%d %H:%M') + " " + printfname)
11455-
lcfi = lcfi + 1
11427+
if(lenlist > listarrayfiles['fnumfiles'] or lenlist < listarrayfiles['fnumfiles']):
11428+
lcfx = int(lenlist)
11429+
else:
11430+
lcfx = int(listarrayfiles['fnumfiles'])
11431+
returnval = {}
11432+
while(lcfi < lcfx):
11433+
returnval.update({lcfi: listarrayfiles['ffilelist'][lcfi]['fname']})
11434+
if(not verbose):
11435+
VerbosePrintOut(listarrayfiles['ffilelist'][lcfi]['fname'])
11436+
if(verbose):
11437+
permissions = {'access': {'0': ('---'), '1': ('--x'), '2': ('-w-'), '3': ('-wx'), '4': (
11438+
'r--'), '5': ('r-x'), '6': ('rw-'), '7': ('rwx')}, 'roles': {0: 'owner', 1: 'group', 2: 'other'}}
11439+
printfname = listarrayfiles['ffilelist'][lcfi]['fname']
11440+
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 1):
11441+
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11442+
" link to " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11443+
if(listarrayfiles['ffilelist'][lcfi]['ftype'] == 2):
11444+
printfname = listarrayfiles['ffilelist'][lcfi]['fname'] + \
11445+
" -> " + listarrayfiles['ffilelist'][lcfi]['flinkname']
11446+
fuprint = listarrayfiles['ffilelist'][lcfi]['funame']
11447+
if(len(fuprint) <= 0):
11448+
fuprint = listarrayfiles['ffilelist'][lcfi]['fuid']
11449+
fgprint = listarrayfiles['ffilelist'][lcfi]['fgname']
11450+
if(len(fgprint) <= 0):
11451+
fgprint = listarrayfiles['ffilelist'][lcfi]['fgid']
11452+
if(newstyle):
11453+
VerbosePrintOut(ftype_to_str(listarrayfiles['ffilelist'][lcfi]['ftype']) + "\t" + listarrayfiles['ffilelist'][lcfi]['fcompression'] + "\t" + str(
11454+
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + "\t" + printfname)
11455+
else:
11456+
VerbosePrintOut(PrintPermissionString(listarrayfiles['ffilelist'][lcfi]['fmode'], listarrayfiles['ffilelist'][lcfi]['ftype']) + " " + str(fuprint) + "/" + str(fgprint) + " " + str(
11457+
listarrayfiles['ffilelist'][lcfi]['fsize']).rjust(15) + " " + datetime.datetime.utcfromtimestamp(listarrayfiles['ffilelist'][lcfi]['fmtime']).strftime('%Y-%m-%d %H:%M') + " " + printfname)
11458+
lcfi = lcfi + 1
1145611459
if(returnfp):
1145711460
return listarrayfiles['fp']
1145811461
else:

0 commit comments

Comments
 (0)