[Zope-Checkins] CVS: ZODB3/ZEO/zrpc - client.py:1.25.18.2

Jeremy Hylton jeremy@zope.com
Fri, 11 Jul 2003 15:13:57 -0400


Update of /cvs-repository/ZODB3/ZEO/zrpc
In directory cvs.zope.org:/tmp/cvs-serv14820/ZEO/zrpc

Modified Files:
      Tag: zodb33-devel-branch
	client.py 
Log Message:
Call ThreadedAsync.remove_loop_callback() during close().

If the mainloop never started, this would cause the ClientStorage and
everything reachable from it to leak.

Also, make ConnectionManager a new-style class.


=== ZODB3/ZEO/zrpc/client.py 1.25.18.1 => 1.25.18.2 ===
--- ZODB3/ZEO/zrpc/client.py:1.25.18.1	Tue Jul  1 16:57:13 2003
+++ ZODB3/ZEO/zrpc/client.py	Fri Jul 11 15:13:51 2003
@@ -28,7 +28,7 @@
 from ZEO.zrpc.trigger import trigger
 from ZEO.zrpc.connection import ManagedConnection
 
-class ConnectionManager:
+class ConnectionManager(object):
     """Keeps a connection up over time"""
 
     def __init__(self, addrs, client, tmin=1, tmax=180):
@@ -85,6 +85,7 @@
     def close(self):
         """Prevent ConnectionManager from opening new connections"""
         self.closed = 1
+        ThreadedAsync.remove_loop_callback(self.set_async)
         self.cond.acquire()
         try:
             t = self.thread