Skip to content

Commit 57b9fc5

Browse files
authored
Add files via upload
1 parent 4051035 commit 57b9fc5

File tree

1 file changed

+52
-6
lines changed

1 file changed

+52
-6
lines changed

pyarchivefile.py

Lines changed: 52 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7057,24 +7057,70 @@ def ArchiveFileValidate(infile, fmttype="auto", filestart=0, formatspecs=__file_
70577057
return False
70587058

70597059

7060-
def ArchiveFileValidateFile(infile, fmttype="auto", formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7061-
return ArchiveFileValidate(infile, fmttype, formatspecs, verbose, returnfp)
7060+
def ArchiveFileValidateFile(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7061+
return ArchiveFileValidate(infile, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
70627062

70637063

7064-
def ArchiveFileValidateMultiple(infile, fmttype="auto", formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7064+
def ArchiveFileValidateMultiple(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
70657065
if(isinstance(infile, (list, tuple, ))):
70667066
pass
70677067
else:
70687068
infile = [infile]
70697069
outretval = True
70707070
for curfname in infile:
7071-
curretfile = ArchiveFileValidate(curfname, fmttype, formatspecs, verbose, returnfp)
7071+
curretfile = ArchiveFileValidate(curfname, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
70727072
if(not curretfile):
70737073
outretval = False
70747074
return outretval
70757075

7076-
def ArchiveFileValidateMultipleFiles(infile, fmttype="auto", formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7077-
return ArchiveFileValidateMultiple(infile, fmttype, formatspecs, verbose, returnfp)
7076+
def ArchiveFileValidateMultipleFiles(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7077+
return ArchiveFileValidateMultiple(infile, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
7078+
7079+
7080+
def StackedArchiveFileValidate(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7081+
outretval = []
7082+
outstartfile = filestart
7083+
outfsize = float('inf')
7084+
while True:
7085+
if outstartfile >= outfsize: # stop when function signals False
7086+
break
7087+
is_valid_file = ArchiveFileValidate(infile, fmttype, filestart, formatspecs, seektoend, verbose, True)
7088+
if is_valid_file is False: # stop when function signals False
7089+
outretval.append(is_valid_file)
7090+
else:
7091+
outretval.append(True)
7092+
infile = is_valid_file
7093+
outstartfile = infile.tell()
7094+
try:
7095+
infile.seek(0, 2)
7096+
except OSError:
7097+
SeekToEndOfFile(infile)
7098+
except ValueError:
7099+
SeekToEndOfFile(infile)
7100+
outfsize = infile.tell()
7101+
infile.seek(outstartfile, 0)
7102+
return outretval
7103+
7104+
7105+
def StackedArchiveFileValidateFile(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7106+
return StackedArchiveFileValidate(infile, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
7107+
7108+
7109+
def StackedArchiveFileValidateMultiple(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7110+
if(isinstance(infile, (list, tuple, ))):
7111+
pass
7112+
else:
7113+
infile = [infile]
7114+
outretval = True
7115+
for curfname in infile:
7116+
curretfile = StackedArchiveFileValidate(curfname, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
7117+
if(not curretfile):
7118+
outretval = False
7119+
return outretval
7120+
7121+
def StackedArchiveFileValidateMultipleFiles(infile, fmttype="auto", filestart=0, formatspecs=__file_format_multi_dict__, seektoend=False, verbose=False, returnfp=False):
7122+
return StackedArchiveFileValidateMultiple(infile, fmttype, filestart, formatspecs, seektoend, verbose, returnfp)
7123+
70787124

70797125
def ArchiveFileToArray(infile, fmttype="auto", filestart=0, seekstart=0, seekend=0, listonly=False, contentasfile=True, uncompress=True, skipchecksum=False, formatspecs=__file_format_multi_dict__, seektoend=False, returnfp=False):
70807126
if(IsNestedDict(formatspecs) and fmttype!="auto" and fmttype in formatspecs):

0 commit comments

Comments
 (0)