# HG changeset patch # User Pierre-Yves David # Date 2023-02-02 16:23:37 # Node ID fca08dd6223d5f3a5e26e62f23ab1b898ab1c4b3 # Parent 82ef5410f2aa550e9a63b827acf10028d153fc2c 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. diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py --- a/mercurial/dispatch.py +++ b/mercurial/dispatch.py @@ -331,7 +331,7 @@ def _runcatch(req): ui = req.ui try: - for name in b'SIGBREAK', b'SIGHUP', b'SIGTERM': + for name in 'SIGBREAK', 'SIGHUP', 'SIGTERM': num = getattr(signal, name, None) if num: signal.signal(num, catchterm)