Skip to content

Commit a9b4dc2

Browse files
author
Kazuki Suzuki Przyborowski
committed
Update pycatfile.py
1 parent aa6250a commit a9b4dc2

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

pycatfile.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3164,9 +3164,11 @@ def AppendFileHeader(fp, numfiles, fencoding, extradata=[], checksumtype="crc32"
31643164
fileheaderver = str(int(formver.replace(".", "")))
31653165
fileheader = AppendNullByte(
31663166
formatspecs['format_magic'] + fileheaderver, formatspecs['format_delimiter'])
3167-
extrafields = format(len(extradata), 'x').lower()
3168-
if isinstance(extradata, dict) or IsNestedDictAlt(extradata):
3167+
if (isinstance(extradata, dict) or IsNestedDictAlt(extradata)) and len(extradata) > 0:
31693168
extradata = [base64.b64encode(json.dumps(extradata, separators=(',', ':')).encode("UTF-8")).decode("UTF-8")]
3169+
elif (isinstance(extradata, dict) or IsNestedDictAlt(extradata)) and len(extradata) == 0:
3170+
extradata = []
3171+
extrafields = format(len(extradata), 'x').lower()
31703172
extrasizestr = AppendNullByte(extrafields, formatspecs['format_delimiter'])
31713173
if(len(extradata) > 0):
31723174
extrasizestr = extrasizestr + \
@@ -3319,8 +3321,10 @@ def MakeEmptyCatFile(outfile, compression="auto", compresswholefile=True, compre
33193321
def AppendFileHeaderWithContent(fp, filevalues=[], extradata=[], filecontent="", checksumtype=["crc32", "crc32"], formatspecs=__file_format_dict__):
33203322
if(not hasattr(fp, "write")):
33213323
return False
3322-
if isinstance(extradata, dict) or IsNestedDictAlt(extradata):
3324+
if (isinstance(extradata, dict) or IsNestedDictAlt(extradata)) and len(extradata) > 0:
33233325
extradata = [base64.b64encode(json.dumps(extradata, separators=(',', ':')).encode("UTF-8")).decode("UTF-8")]
3326+
elif (isinstance(extradata, dict) or IsNestedDictAlt(extradata)) and len(extradata) == 0:
3327+
extradata = []
33243328
extrafields = format(len(extradata), 'x').lower()
33253329
extrasizestr = AppendNullByte(extrafields, formatspecs['format_delimiter'])
33263330
if(len(extradata) > 0):

0 commit comments

Comments
 (0)