# HG changeset patch # User Yuya Nishihara # Date 2018-11-17 11:23:50 # Node ID eb5948f29c602e206fdd375b9b7dc871da310097 # Parent 2f14d1bbc9a7a142b421285c0708320b46be7a56 blackbox: change the way of deactivating the logger on write error This prepares for the upcoming code move. The recursion guard will be ported to the core ui. diff --git a/hgext/blackbox.py b/hgext/blackbox.py --- a/hgext/blackbox.py +++ b/hgext/blackbox.py @@ -159,7 +159,7 @@ class blackboxlogger(object): def _log(self, ui, event, msg, opts): if self._inlog: - # recursion and failure guard + # recursion guard return self._inlog = True default = ui.configdate('devel', 'default-date') @@ -185,10 +185,10 @@ class blackboxlogger(object): with _openlogfile(ui, self._bbvfs) as fp: fp.write(fmt % args) except (IOError, OSError) as err: + # deactivate this to avoid failed logging again + self._repo = None ui.debug('warning: cannot write to blackbox.log: %s\n' % encoding.strtolocal(err.strerror)) - # do not restore _inlog intentionally to avoid failed - # logging again else: self._inlog = False