process: Fix wrong use of log.ctx(self)
That's not needed and will produce some parent loop detection in
log.find_on_stack() if logging is called under that stack frame.
Change-Id: I4ab7e8977fa9bad5c8956b7c1df1513b27bb5aa2
diff --git a/src/osmo_gsm_tester/core/log.py b/src/osmo_gsm_tester/core/log.py
index d60bf0b..8ae55d9 100644
--- a/src/osmo_gsm_tester/core/log.py
+++ b/src/osmo_gsm_tester/core/log.py
@@ -318,8 +318,12 @@
f = sys._getframe(2)
if origin_or_str is None:
f.f_locals.pop(LOG_CTX_VAR, None)
- else:
- f.f_locals[LOG_CTX_VAR] = origin_or_str
+ return
+ if isinstance(origin_or_str, Origin) and origin_or_str is f.f_locals.get('self'):
+ # Avoid adding log ctx in stack frame where Origin it is already "self",
+ # it is not needed and will make find_on_stack() to malfunction
+ raise Error('Don\'t use log.ctx(self), it\'s not needed!')
+ f.f_locals[LOG_CTX_VAR] = origin_or_str
class OriginLoopError(Error):
pass