[Python-checkins] CVS: python/dist/src/Lib xmlrpclib.py,1.7,1.8

Martin v. L?wis loewis@users.sourceforge.net
Sun, 30 Sep 2001 13:15:43 -0700


Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv8421

Modified Files:
	xmlrpclib.py 
Log Message:
Properly detect recursive structures. Adopted from patch #465298.


Index: xmlrpclib.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/xmlrpclib.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** xmlrpclib.py	2001/09/10 21:45:42	1.7
--- xmlrpclib.py	2001/09/30 20:15:41	1.8
***************
*** 491,494 ****
--- 491,498 ----
              self.memo[i] = None
  
+     def endcontainer(self, value):
+         if value:
+             del self.memo[id(value)]
+ 
      def dump_array(self, value):
          self.container(value)
***************
*** 498,501 ****
--- 502,506 ----
              self.__dump(v)
          write("</data></array></value>\n")
+         self.endcontainer(value)
      dispatch[TupleType] = dump_array
      dispatch[ListType] = dump_array
***************
*** 514,517 ****
--- 519,523 ----
              write("</member>\n")
          write("</struct></value>\n")
+         self.endcontainer(value)
      dispatch[DictType] = dump_struct