Patchwork D6525: tracing: extract tracing-active logic to separate function

login
register
mail settings
Submitter phabricator
Date June 14, 2019, 11:16 p.m.
Message ID <af54fbc0cdc4691b6b6a6eee0b8195d4@localhost.localdomain>
Download mbox | patch
Permalink /patch/40523/
State Not Applicable
Headers show

Comments

phabricator - June 14, 2019, 11:16 p.m.
Closed by commit rHGd0b8a3cfd732: tracing: extract tracing-active logic to separate function (authored by durin42).
This revision was automatically updated to reflect the committed changes.

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D6525?vs=15477&id=15525

CHANGES SINCE LAST ACTION
  https://phab.mercurial-scm.org/D6525/new/

REVISION DETAIL
  https://phab.mercurial-scm.org/D6525

AFFECTED FILES
  hgdemandimport/tracing.py

CHANGE DETAILS




To: durin42, #hg-reviewers, pulkit
Cc: mercurial-devel

Patch

diff --git a/hgdemandimport/tracing.py b/hgdemandimport/tracing.py
--- a/hgdemandimport/tracing.py
+++ b/hgdemandimport/tracing.py
@@ -13,19 +13,23 @@ 
 _pipe = None
 _checked = False
 
-@contextlib.contextmanager
-def log(whencefmt, *whenceargs):
+def _isactive():
     global _pipe, _session, _checked
     if _pipe is None:
         if _checked:
-            yield
-            return
+            return False
         _checked = True
         if 'HGCATAPULTSERVERPIPE' not in os.environ:
-            yield
-            return
+            return False
         _pipe = open(os.environ['HGCATAPULTSERVERPIPE'], 'w', 1)
         _session = os.environ.get('HGCATAPULTSESSION', 'none')
+    return True
+
+@contextlib.contextmanager
+def log(whencefmt, *whenceargs):
+    if not _isactive():
+        yield
+        return
     whence = whencefmt % whenceargs
     try:
         # Both writes to the pipe are wrapped in try/except to ignore