From: Antoine Pitrou Date: Fri, 23 Apr 2010 23:10:32 +0000 (+0000) Subject: Only the test is merged in. X-Git-Tag: v3.2a1~1025 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9d5436621fb968a59350745cd3b7cb117a87c2a9;p=thirdparty%2FPython%2Fcpython.git Only the test is merged in. Merged revisions 80423 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r80423 | antoine.pitrou | 2010-04-24 00:54:59 +0200 (sam., 24 avril 2010) | 4 lines Issue #7943: Fix circular reference created when instantiating an SSL socket. Initial patch by Péter Szabó. ........ --- diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index 2aa265ae3071..f00478cf412d 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -11,6 +11,7 @@ import pprint import urllib.parse, urllib.request import traceback import asyncore +import weakref from http.server import HTTPServer, SimpleHTTPRequestHandler @@ -138,6 +139,16 @@ class BasicTests(unittest.TestCase): with self.assertRaisesRegexp(ssl.SSLError, "No cipher can be selected"): s.connect(remote) + @support.cpython_only + def test_refcycle(self): + # Issue #7943: an SSL object doesn't create reference cycles with + # itself. + s = socket.socket(socket.AF_INET) + ss = ssl.wrap_socket(s) + wr = weakref.ref(ss) + del ss + self.assertEqual(wr(), None) + class NetworkedTests(unittest.TestCase):