summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
Diffstat (limited to 'synapse')
-rw-r--r--synapse/util/debug.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/synapse/util/debug.py b/synapse/util/debug.py
index 66ac12c291..f6a5a841a4 100644
--- a/synapse/util/debug.py
+++ b/synapse/util/debug.py
@@ -17,13 +17,6 @@ from twisted.internet import defer, reactor
 from functools import wraps
 from synapse.util.logcontext import LoggingContext, PreserveLoggingContext
 
-def with_logging_context(fn):
-    context = LoggingContext.current_context()
-    def restore_context_callback(x):
-        with PreserveLoggingContext():
-            LoggingContext.thread_local.current_context = context
-            return fn(x)
-    return restore_context_callback
 
 def debug_deferreds():
     """Cause all deferreds to wait for a reactor tick before running their
@@ -31,6 +24,18 @@ def debug_deferreds():
     a defer.inlineCallback since the code waiting on the deferred will get
     a chance to add an errback before the deferred runs."""
 
+    # Helper method for retrieving and restoring the current logging context
+    # around a callback.
+    def with_logging_context(fn):
+        context = LoggingContext.current_context()
+
+        def restore_context_callback(x):
+            with PreserveLoggingContext():
+                LoggingContext.thread_local.current_context = context
+                return fn(x)
+
+        return restore_context_callback
+
     # We are going to modify the __init__ method of defer.Deferred so we
     # need to get a copy of the old method so we can still call it.
     old__init__ = defer.Deferred.__init__
@@ -65,4 +70,3 @@ def debug_deferreds():
         self.addCallbacks(bounce_callback, bounce_errback)
 
     defer.Deferred.__init__ = new__init__
-