[CMF-checkins] CVS: CMF/CMFCore - MemberDataTool.py:1.15.8.3
Florent Guillaume
fg@nuxeo.com
Fri, 14 Mar 2003 11:38:38 -0500
Update of /cvs-repository/CMF/CMFCore
In directory cvs.zope.org:/tmp/cvs-serv25338
Modified Files:
Tag: CMF-1_3-branch
MemberDataTool.py
Log Message:
Merge from HEAD:
Clean temporaries at the end of the request when wrapping users,
otherwise they may provide wrong defaults later (Collector #136).
=== CMF/CMFCore/MemberDataTool.py 1.15.8.2 => 1.15.8.3 ===
--- CMF/CMFCore/MemberDataTool.py:1.15.8.2 Thu Aug 1 15:07:55 2002
+++ CMF/CMFCore/MemberDataTool.py Fri Mar 14 11:38:38 2003
@@ -164,6 +164,7 @@
m = MemberData(base, id)
if temps is None:
self._v_temps = {id:m}
+ self.REQUEST._hold(CleanupTemp(self))
else:
temps[id] = m
else:
@@ -183,6 +184,14 @@
self._members[id] = m
Globals.InitializeClass(MemberDataTool)
+
+
+class CleanupTemp:
+ """Used to cleanup _v_temps at the end of the request."""
+ def __init__(self, tool):
+ self._tool = tool
+ def __del__(self):
+ del self._tool._v_temps
class MemberData (SimpleItem):