aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/PySide6/QtAsyncio/events.py
diff options
context:
space:
mode:
authorAdrian Herrmann <adrian.herrmann@qt.io>2023-11-24 16:35:53 +0100
committerAdrian Herrmann <adrian.herrmann@qt.io>2023-11-24 21:23:33 +0100
commit476dea383d64d528263ff12d795901b10bc7ed48 (patch)
treeb2ffe8ad1906bf0f48e6b9fe260c52a5a0a6fbd5 /sources/pyside6/PySide6/QtAsyncio/events.py
parent3078f67ec5f88a3a96d223798abe872eda8c5dbe (diff)
QtAsyncio: Do not raise exception at handle cancel
Do not raise an exception when cancelling a handle. The exception should be raised later, when retrieving the future's result. Pick-to: 6.6 Task-number: PYSIDE-769 Change-Id: I8243cf16e8be5afe167d69313054e97e9aafc75c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Diffstat (limited to 'sources/pyside6/PySide6/QtAsyncio/events.py')
-rw-r--r--sources/pyside6/PySide6/QtAsyncio/events.py9
1 files changed, 1 insertions, 8 deletions
diff --git a/sources/pyside6/PySide6/QtAsyncio/events.py b/sources/pyside6/PySide6/QtAsyncio/events.py
index d64d7d22b..7e578e547 100644
--- a/sources/pyside6/PySide6/QtAsyncio/events.py
+++ b/sources/pyside6/PySide6/QtAsyncio/events.py
@@ -466,8 +466,6 @@ class QAsyncioHandle():
def __init__(self, callback: typing.Callable, args: typing.Tuple,
loop: QAsyncioEventLoop, context: typing.Optional[contextvars.Context]) -> None:
- self._cancel_exception_msg: typing.Optional[str] = None
-
self._callback = callback
self._args = args
self._loop = loop
@@ -494,15 +492,10 @@ class QAsyncioHandle():
self._callback(*self._args)
self._state = QAsyncioHandle.HandleState.DONE
- @Slot()
- def _cancel_exception(self) -> None:
- raise asyncio.CancelledError(self._cancel_exception_msg)
-
def cancel(self) -> None:
if self._state == QAsyncioHandle.HandleState.PENDING:
- self._state = QAsyncioHandle.HandleState.CANCELLED
# The old timer that was created in _start will still trigger but _cb won't do anything.
- self._schedule_event(0, lambda: self._cancel_exception())
+ self._state = QAsyncioHandle.HandleState.CANCELLED
def cancelled(self) -> bool:
return self._state == QAsyncioHandle.HandleState.CANCELLED