[Python-checkins] bpo-26133: Clear signals list on interpreter finalizing (#5002)

Andrew Svetlov webhook-mailer at python.org
Sun Dec 24 06:50:07 EST 2017


https://github.com/python/cpython/commit/4f146f9ed133b9ad56d4ee7a653396836af34067
commit: 4f146f9ed133b9ad56d4ee7a653396836af34067
branch: master
author: Andrew Svetlov <andrew.svetlov at gmail.com>
committer: GitHub <noreply at github.com>
date: 2017-12-24T13:50:03+02:00
summary:

bpo-26133: Clear signals list on interpreter finalizing (#5002)

files:
M Lib/asyncio/unix_events.py

diff --git a/Lib/asyncio/unix_events.py b/Lib/asyncio/unix_events.py
index ec767f57d3a..5d6a3c09ac7 100644
--- a/Lib/asyncio/unix_events.py
+++ b/Lib/asyncio/unix_events.py
@@ -55,10 +55,13 @@ def close(self):
             for sig in list(self._signal_handlers):
                 self.remove_signal_handler(sig)
         else:
-            warinigs.warn(f"Closing the loop {self!r} on interpreter shutdown "
-                          f"stage, signal unsubsription is disabled",
-                          ResourceWarning,
-                          source=self)
+            if self._signal_handlers:
+                warinigs.warn(f"Closing the loop {self!r} "
+                              f"on interpreter shutdown "
+                              f"stage, signal unsubsription is disabled",
+                              ResourceWarning,
+                              source=self)
+                self._signal_handlers.clear()
 
     def _process_self_data(self, data):
         for signum in data:



More information about the Python-checkins mailing list