At 08:45 PM 6/19/00 +0800, mike wrote:
It looks like retrieved items have no _v_dm_ set. I fixed it (not sure this is right) with:
File: Rack.py
def getItem(self, key): """Get an item from the rack by key"""
# Borrow canonicals map for per-transaction item cache k = key, item = self._canonicalForm(k,_marker)
if item is _marker: item = self.retrieveItem(key) self._registerCanonical(k,item) # XXX Should we cache non-existence?
if item is not None: item._setRack(self.aq_inner) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ return item
Okay, I've tracked this one down now. It's retrieveItem() that's broken; the _setRack(self.aq_inner) call should go right before the _setSlot(slot) call. Checking this one in now... Will upload an alpha3 release shortly.