mercurial/templatefilters.py
changeset 50928 d718eddf01d9
parent 50609 90945014f4e4
--- a/mercurial/templatefilters.py	Thu Dec 08 15:33:19 2022 +0100
+++ b/mercurial/templatefilters.py	Thu Aug 31 23:56:15 2023 +0200
@@ -339,14 +339,14 @@
         raise error.ProgrammingError(
             b'Mercurial only does output with bytes: %r' % obj
         )
-    elif util.safehasattr(obj, 'keys'):
+    elif hasattr(obj, 'keys'):
         out = [
             b'"%s": %s'
             % (encoding.jsonescape(k, paranoid=paranoid), json(v, paranoid))
             for k, v in sorted(obj.items())
         ]
         return b'{' + b', '.join(out) + b'}'
-    elif util.safehasattr(obj, '__iter__'):
+    elif hasattr(obj, '__iter__'):
         out = [json(i, paranoid) for i in obj]
         return b'[' + b', '.join(out) + b']'
     raise error.ProgrammingError(b'cannot encode %r' % obj)