summaryrefslogtreecommitdiff
path: root/backend/decky_loader/main.py
diff options
context:
space:
mode:
authorLukas Senionis <warliukz@gmail.com>2026-09-03 01:44:20 +0300
committerGitHub <noreply@github.com>2026-09-02 18:44:20 -0400
commit1ea69d315a49376e32f1fba46ffa7d028eed8046 (patch)
tree94a54a3ddd1e7689c6a6771255055493e6b74ddc /backend/decky_loader/main.py
parent2254cc44e0d65d3255c05bb67b67f3fb683a5db0 (diff)
downloaddecky-loader-3.2.8.tar.gz
decky-loader-3.2.8.zip
Fix pyright annotation issue for __qualname__ (#959)HEADv3.2.8main
Diffstat (limited to 'backend/decky_loader/main.py')
-rw-r--r--backend/decky_loader/main.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/backend/decky_loader/main.py b/backend/decky_loader/main.py
index 16caca2e..24115419 100644
--- a/backend/decky_loader/main.py
+++ b/backend/decky_loader/main.py
@@ -138,7 +138,17 @@ class PluginManager:
tasks = all_tasks()
current = current_task()
async def cancel_task(task: Task[Any]):
- name = task.get_coro().__qualname__
+ task_coro = task.get_coro()
+ if not task_coro:
+ # Can be None in case asyncio.eager_task_factory is used in the future
+ return
+
+ if sys.version_info >= (3, 12):
+ name = task_coro.__qualname__
+ else:
+ # Before 3.12, the task_coro can be a generator and apparently it does not
+ # have __qualname__, so this workaround is needed...
+ name = getattr(task_coro, "__qualname__", task.get_name())
logger.debug(f"Cancelling task {name}")
try:
task.cancel()