[Zope-CMF] MemberDataTool's wrapUser

Florent Guillaume fg@nuxeo.com
Fri, 7 Mar 2003 16:47:50 +0100


There is a bug in MemberDataTool.wrapUser(). It attempts to cache things
in _v_temps, but cannot clean up after a deletion (there is no way to
invalidate a _v_ attribute as it may be in another thread).

So in the following scenario:

- user foo is created and is wrapped -> _v_temps contains foo
- member foo is deleted
- user foo is re-created, then wrapped
    -> an old MemberData in _v_temps is found and used
         => stale values are used for properties
    -> it is not reregistered for storage in _members
         => any call to setMemberProperties is lost in an instance
            that is not in _members.

So I'd like to remove this _v_temps caching whose purpose I can't see
anyway.

(Added as http://collector.zope.org/CMF/136)

Florent


-- 
Florent Guillaume, Nuxeo (Paris, France)
+33 1 40 33 79 87  http://nuxeo.com  mailto:fg@nuxeo.com