safehasattr: pass attribute name as string instead of bytes
authorPierre-Yves David <pierre-yves.david@octobus.net>
Thu, 02 Feb 2023 17:23:20 +0100
changeset 50566 309a7ecef246
parent 50565 2b1cd454793a
child 50567 2452843baf90
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/dispatch.py
--- a/mercurial/dispatch.py	Thu Feb 02 17:23:12 2023 +0100
+++ b/mercurial/dispatch.py	Thu Feb 02 17:23:20 2023 +0100
@@ -107,7 +107,7 @@
 def _flushstdio(ui, err):
     status = None
     # In all cases we try to flush stdio streams.
-    if util.safehasattr(ui, b'fout'):
+    if util.safehasattr(ui, 'fout'):
         assert ui is not None  # help pytype
         assert ui.fout is not None  # help pytype
         try: