safehasattr: pass attribute name as string instead of bytes
authorPierre-Yves David <pierre-yves.david@octobus.net>
Thu, 02 Feb 2023 17:36:55 +0100
changeset 50607 bf7ad17b0a58
parent 50606 a30e6401c7f0
child 50608 046b9cce5850
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/subrepoutil.py
--- a/mercurial/subrepoutil.py	Thu Feb 02 17:36:47 2023 +0100
+++ b/mercurial/subrepoutil.py	Thu Feb 02 17:36:55 2023 +0100
@@ -428,7 +428,7 @@
             return bytes(parent)
     else:  # recursion reached top repo
         path = None
-        if util.safehasattr(repo, b'_subtoppath'):
+        if util.safehasattr(repo, '_subtoppath'):
             path = repo._subtoppath
         elif push and repo.ui.config(b'paths', b'default-push'):
             path = repo.ui.config(b'paths', b'default-push')