master
/ miniconda3 / pkgs / nest-asyncio-1.5.6-py310h06a4308_0 / info / recipe / 0001-Prevent-infinite-loop-when-asyncio.sleep-0-is-used-i.patch

0001-Prevent-infinite-loop-when-asyncio.sleep-0-is-used-i.patch @74036c5 raw · history · blame

From 9796f03a82a0b340a7381a3008e16d656df2fed2 Mon Sep 17 00:00:00 2001
From: Ewald de Wit <ewald.de.wit@gmail.com>
Date: Mon, 21 Sep 2020 18:54:47 +0200
Subject: [PATCH] Prevent infinite loop when asyncio.sleep(0) is used in a loop
 (fixes #34)

---
 nest_asyncio.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/nest_asyncio.py b/nest_asyncio.py
index 7b7466a..5f17c0b 100644
--- a/nest_asyncio.py
+++ b/nest_asyncio.py
@@ -117,7 +117,9 @@ def _patch_loop(loop):
             handle = heappop(scheduled)
             ready.append(handle)
 
-        while ready:
+        for _ in range(len(ready)):
+            if not ready:
+                break
             handle = ready.popleft()
             if not handle._cancelled:
                 handle._run()
-- 
2.23.0