util: add length argument to util.buffer()
util.buffer() either returns inbuilt buffer function or defines a new one which
slices. The inbuilt buffer() also has a length argument which is missing from
the ones we defined. This patch adds that length argument.
--- a/mercurial/util.py Sun Jan 15 13:17:05 2017 +0530
+++ b/mercurial/util.py Sat Jan 14 20:05:15 2017 +0530
@@ -238,10 +238,14 @@
buffer = buffer
except NameError:
if not pycompat.ispy3:
- def buffer(sliceable, offset=0):
+ def buffer(sliceable, offset=0, length=None):
+ if length is not None:
+ return sliceable[offset:offset + length]
return sliceable[offset:]
else:
- def buffer(sliceable, offset=0):
+ def buffer(sliceable, offset=0, length=None):
+ if length is not None:
+ return memoryview(sliceable)[offset:offset + length]
return memoryview(sliceable)[offset:]
closefds = pycompat.osname == 'posix'