diff --git a/companion.py b/companion.py index 1c68e38b..9cf69b42 100644 --- a/companion.py +++ b/companion.py @@ -733,7 +733,7 @@ class Session(object): self.auth = None raise # Bad thing happened - def close(self) -> None: + def close(self, reopen: bool = True) -> None: """Close Frontier authorization session.""" self.state = Session.STATE_INIT if self.requests_session: @@ -742,8 +742,11 @@ class Session(object): except Exception as e: logger.debug('Frontier Auth: closing', exc_info=e) + self.requests_session = None - self.requests_session = None + # 2022-12-21: Current callers all need a *new* session. + if reopen: + self.requests_session = requests.Session() def invalidate(self) -> None: """Invalidate Frontier authorization credentials."""