diff --git a/Lib/asyncio/futures.py b/Lib/asyncio/futures.py index 215f72d1910ecf..abc05476c0c7d8 100644 --- a/Lib/asyncio/futures.py +++ b/Lib/asyncio/futures.py @@ -120,14 +120,14 @@ def _schedule_callbacks(self): The callbacks are scheduled to be called as soon as possible. Also clears the callback list. """ - callbacks = self._callbacks[:] - if not callbacks: + if not self._callbacks: return - self._callbacks[:] = [] - for callback in callbacks: + for callback in self._callbacks: self._loop.call_soon(callback, self) + self._callbacks.clear() + def cancelled(self): """Return True if the future was cancelled.""" return self._state == _CANCELLED