--- a/mercurial/cffi/osutil.py Sun Oct 06 09:45:02 2019 -0400
+++ b/mercurial/cffi/osutil.py Sun Oct 06 09:48:39 2019 -0400
@@ -40,8 +40,8 @@
self.st_mtime = st_mtime
self.st_size = st_size
- tv_sec_ofs = ffi.offsetof("struct timespec", "tv_sec")
- buf = ffi.new("char[]", listdir_batch_size)
+ tv_sec_ofs = ffi.offsetof(b"struct timespec", b"tv_sec")
+ buf = ffi.new(b"char[]", listdir_batch_size)
def listdirinternal(dfd, req, stat, skip):
ret = []
@@ -51,20 +51,20 @@
break
if r == -1:
raise OSError(ffi.errno, os.strerror(ffi.errno))
- cur = ffi.cast("val_attrs_t*", buf)
+ cur = ffi.cast(b"val_attrs_t*", buf)
for i in range(r):
lgt = cur.length
- assert lgt == ffi.cast('uint32_t*', cur)[0]
+ assert lgt == ffi.cast(b'uint32_t*', cur)[0]
ofs = cur.name_info.attr_dataoffset
str_lgt = cur.name_info.attr_length
- base_ofs = ffi.offsetof('val_attrs_t', 'name_info')
+ base_ofs = ffi.offsetof(b'val_attrs_t', b'name_info')
name = str(
ffi.buffer(
- ffi.cast("char*", cur) + base_ofs + ofs, str_lgt - 1
+ ffi.cast(b"char*", cur) + base_ofs + ofs, str_lgt - 1
)
)
tp = attrkinds[cur.obj_type]
- if name == "." or name == "..":
+ if name == b"." or name == b"..":
continue
if skip == name and tp == statmod.S_ISDIR:
return []
@@ -85,12 +85,12 @@
else:
ret.append((name, tp))
cur = ffi.cast(
- "val_attrs_t*", int(ffi.cast("intptr_t", cur)) + lgt
+ b"val_attrs_t*", int(ffi.cast(b"intptr_t", cur)) + lgt
)
return ret
def listdir(path, stat=False, skip=None):
- req = ffi.new("struct attrlist*")
+ req = ffi.new(b"struct attrlist*")
req.bitmapcount = lib.ATTR_BIT_MAP_COUNT
req.commonattr = (
lib.ATTR_CMN_RETURNED_ATTRS