Skip to content

Commit 6d24172

Browse files
author
Kazuki Suzuki Przyborowski
committed
Update pycatfile.py
1 parent 3fce588 commit 6d24172

1 file changed

Lines changed: 48 additions & 18 deletions

File tree

pycatfile.py

Lines changed: 48 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3200,7 +3200,10 @@ def AppendFileHeader(fp, numfiles, fencoding, extradata=[], checksumtype="crc32"
32003200
AppendNullByte(catfileheadercshex, formatspecs['format_delimiter'])
32013201
catheaersize = format(int(len(fnumfilesa) - len(formatspecs['format_delimiter'])), 'x').lower()
32023202
catheaersizestr = AppendNullByte(catheaersize, formatspecs['format_delimiter'])
3203-
fp.write(fnumfilesa.encode('UTF-8'))
3203+
try:
3204+
fp.write(fnumfilesa.encode('UTF-8'))
3205+
except OSError:
3206+
return False
32043207
try:
32053208
fp.flush()
32063209
if(hasattr(os, "sync")):
@@ -3328,7 +3331,10 @@ def AppendFileHeaderWithContent(fp, filevalues=[], extradata=[], filecontent="",
33283331
catfileoutstrecd = catfileoutstr.encode('UTF-8')
33293332
nullstrecd = formatspecs['format_delimiter'].encode('UTF-8')
33303333
catfileout = catfileoutstrecd + filecontent + nullstrecd
3331-
fp.write(catfileout)
3334+
try:
3335+
fp.write(catfileout)
3336+
except OSError:
3337+
return False
33323338
try:
33333339
fp.flush()
33343340
if(hasattr(os, "sync")):
@@ -3630,8 +3636,11 @@ def AppendFilesWithContent(infiles, fp, dirlistfromtxt=False, filevalues=[], ext
36303636
AppendFileHeaderWithContent(
36313637
fp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
36323638
if(numfiles > 0):
3633-
catfp.write(AppendNullBytes(
3634-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
3639+
try:
3640+
catfp.write(AppendNullBytes(
3641+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
3642+
except OSError:
3643+
return False
36353644
fp.seek(0, 0)
36363645
return fp
36373646

@@ -3694,8 +3703,11 @@ def AppendListsWithContent(inlist, fp, dirlistfromtxt=False, filevalues=[], extr
36943703
AppendFileHeaderWithContent(
36953704
fp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
36963705
if(numfiles > 0):
3697-
fp.write(AppendNullBytes(
3698-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
3706+
try:
3707+
fp.write(AppendNullBytes(
3708+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
3709+
except OSError:
3710+
return False
36993711
return fp
37003712

37013713

@@ -4871,8 +4883,11 @@ def PackArchiveFile(infiles, outfile, dirlistfromtxt=False, compression="auto",
48714883
catfp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
48724884
fcontents.close()
48734885
if(numfiles > 0):
4874-
catfp.write(AppendNullBytes(
4875-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
4886+
try:
4887+
catfp.write(AppendNullBytes(
4888+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
4889+
except OSError:
4890+
return False
48764891
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
48774892
catfp = CompressArchiveFile(
48784893
catfp, compression, compressionlevel, formatspecs)
@@ -5149,8 +5164,11 @@ def PackArchiveFileFromTarFile(infile, outfile, compression="auto", compresswhol
51495164
catfp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
51505165
fcontents.close()
51515166
if(numfiles > 0):
5152-
catfp.write(AppendNullBytes(
5153-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5167+
try:
5168+
catfp.write(AppendNullBytes(
5169+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5170+
except OSError:
5171+
return False
51545172
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
51555173
catfp = CompressArchiveFile(
51565174
catfp, compression, compressionlevel, formatspecs)
@@ -5416,8 +5434,11 @@ def PackArchiveFileFromZipFile(infile, outfile, compression="auto", compresswhol
54165434
catfp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
54175435
fcontents.close()
54185436
if(numfiles > 0):
5419-
catfp.write(AppendNullBytes(
5420-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5437+
try:
5438+
catfp.write(AppendNullBytes(
5439+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5440+
except OSError:
5441+
return False
54215442
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
54225443
catfp = CompressArchiveFile(
54235444
catfp, compression, compressionlevel, formatspecs)
@@ -5713,8 +5734,11 @@ def PackArchiveFileFromRarFile(infile, outfile, compression="auto", compresswhol
57135734
catfp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
57145735
fcontents.close()
57155736
if(numfiles > 0):
5716-
catfp.write(AppendNullBytes(
5717-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5737+
try:
5738+
catfp.write(AppendNullBytes(
5739+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5740+
except OSError:
5741+
return False
57185742
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
57195743
catfp = CompressArchiveFile(
57205744
catfp, compression, compressionlevel, formatspecs)
@@ -5943,8 +5967,11 @@ def PackArchiveFileFromSevenZipFile(infile, outfile, compression="auto", compres
59435967
catfp, catoutlist, extradata, fcontents.read(), [checksumtype[1], checksumtype[2]], formatspecs)
59445968
fcontents.close()
59455969
if(numfiles > 0):
5946-
catfp.write(AppendNullBytes(
5947-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5970+
try:
5971+
catfp.write(AppendNullBytes(
5972+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
5973+
except OSError:
5974+
return False
59485975
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
59495976
catfp = CompressArchiveFile(
59505977
catfp, compression, compressionlevel, formatspecs)
@@ -9125,8 +9152,11 @@ def RePackArchiveFile(infile, outfile, compression="auto", compresswholefile=Tru
91259152
lcfi = lcfi + 1
91269153
reallcfi = reallcfi + 1
91279154
if(lcfx > 0):
9128-
catfp.write(AppendNullBytes(
9129-
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
9155+
try:
9156+
catfp.write(AppendNullBytes(
9157+
["0", "0"], formatspecs['format_delimiter']).encode("UTF-8"))
9158+
except OSError:
9159+
return False
91309160
if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
91319161
catfp = CompressArchiveFile(
91329162
catfp, compression, compressionlevel, formatspecs)

0 commit comments

Comments
 (0)