Mercurial > hg
changeset 14950:144e97421f6b
dispatch: use safehasattr instead of hasattr
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Mon, 25 Jul 2011 15:17:47 -0500 |
parents | a4435770cf57 |
children | 61807854004e |
files | mercurial/dispatch.py |
diffstat | 1 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/dispatch.py Mon Jul 25 16:36:56 2011 -0500 +++ b/mercurial/dispatch.py Mon Jul 25 15:17:47 2011 -0500 @@ -159,16 +159,16 @@ elif m in "zlib".split(): ui.warn(_("(is your Python install correct?)\n")) except IOError, inst: - if hasattr(inst, "code"): + if util.safehasattr(inst, "code"): ui.warn(_("abort: %s\n") % inst) - elif hasattr(inst, "reason"): + elif util.safehasattr(inst, "reason"): try: # usually it is in the form (errno, strerror) reason = inst.reason.args[1] except (AttributeError, IndexError): # it might be anything, for example a string reason = inst.reason ui.warn(_("abort: error: %s\n") % reason) - elif hasattr(inst, "args") and inst.args[0] == errno.EPIPE: + elif util.safehasattr(inst, "args") and inst.args[0] == errno.EPIPE: if ui.debugflag: ui.warn(_("broken pipe\n")) elif getattr(inst, "strerror", None): @@ -338,7 +338,7 @@ ui.debug("alias '%s' shadows command '%s'\n" % (self.name, self.cmdname)) - if hasattr(self, 'shell'): + if util.safehasattr(self, 'shell'): return self.fn(ui, *args, **opts) else: try: @@ -506,7 +506,7 @@ cmd = aliases[0] fn = entry[0] - if cmd and hasattr(fn, 'shell'): + if cmd and util.safehasattr(fn, 'shell'): d = lambda: fn(ui, *args[1:]) return lambda: runcommand(lui, None, cmd, args[:1], ui, options, d, [], {})