comparison mercurial/logcmdutil.py @ 36115:c1104fe76e69

py3: preserve chunks as an iterable of bytes patch.diffstat() returns a bytes. util.chunkbuffer() expects an iterable of bytes. Feeding it a single bytes instance on Python 3 will iterate the characters as integers. This blows up util.chunkbuffer. Differential Revision: https://phab.mercurial-scm.org/D2162
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 11 Feb 2018 16:50:45 -0800
parents 006ff7268c5c
children 1abf089a1d70
comparison
equal deleted inserted replaced
36114:83246d6920f2 36115:c1104fe76e69
79 hunksfilterfn=hunksfilterfn) 79 hunksfilterfn=hunksfilterfn)
80 80
81 if fp is not None or ui.canwritewithoutlabels(): 81 if fp is not None or ui.canwritewithoutlabels():
82 out = fp or ui 82 out = fp or ui
83 if stat: 83 if stat:
84 chunks = patch.diffstat(util.iterlines(chunks), width=width) 84 chunks = [patch.diffstat(util.iterlines(chunks), width=width)]
85 for chunk in util.filechunkiter(util.chunkbuffer(chunks)): 85 for chunk in util.filechunkiter(util.chunkbuffer(chunks)):
86 out.write(chunk) 86 out.write(chunk)
87 else: 87 else:
88 if stat: 88 if stat:
89 chunks = patch.diffstatui(util.iterlines(chunks), width=width) 89 chunks = patch.diffstatui(util.iterlines(chunks), width=width)