safehasattr: pass attribute name as string instead of bytes
authorPierre-Yves David <pierre-yves.david@octobus.net>
Thu, 02 Feb 2023 17:34:25 +0100
changeset 50593 5ae124310ab0
parent 50592 0f83dc22efbc
child 50594 8b605d19cb6f
safehasattr: pass attribute name as string instead of bytes This is a step toward replacing `util.safehasattr` usage with plain `hasattr`. The builtin function behave poorly in Python2 but this was fixed in Python3. These change are done one by one as they tend to have a small odd to trigger puzzling breackage.
mercurial/revlog.py
--- a/mercurial/revlog.py	Thu Feb 02 17:34:17 2023 +0100
+++ b/mercurial/revlog.py	Thu Feb 02 17:34:25 2023 +0100
@@ -1782,7 +1782,7 @@
         """tells whether rev is a snapshot"""
         if not self._sparserevlog:
             return self.deltaparent(rev) == nullrev
-        elif util.safehasattr(self.index, b'issnapshot'):
+        elif util.safehasattr(self.index, 'issnapshot'):
             # directly assign the method to cache the testing and access
             self.issnapshot = self.index.issnapshot
             return self.issnapshot(rev)