fix(telegram): check updater/app state before disconnect
The disconnect() method was unconditionally calling updater.stop() and app.stop(), causing errors when: - The updater was not running (RuntimeError: This Updater is not running!) - The app was None (AttributeError: 'NoneType' object has no attribute) Changes: - Check if updater exists and is running before stopping - Check if app is running before stopping - Only log warnings for actual errors, not expected shutdown states Fixes spurious warnings during gateway shutdown.
This commit is contained in:
@@ -275,8 +275,11 @@ class TelegramAdapter(BasePlatformAdapter):
|
||||
|
||||
if self._app:
|
||||
try:
|
||||
await self._app.updater.stop()
|
||||
await self._app.stop()
|
||||
# Only stop the updater if it's running
|
||||
if self._app.updater and self._app.updater.running:
|
||||
await self._app.updater.stop()
|
||||
if self._app.running:
|
||||
await self._app.stop()
|
||||
await self._app.shutdown()
|
||||
except Exception as e:
|
||||
logger.warning("[%s] Error during Telegram disconnect: %s", self.name, e, exc_info=True)
|
||||
|
||||
Reference in New Issue
Block a user