[Zope-Checkins] CVS: ZODB3/ZODB - FileStorage.py:1.105.2.1
Barry Warsaw
barry@wooz.org
Fri, 11 Oct 2002 17:59:31 -0400
Update of /cvs-repository/ZODB3/ZODB
In directory cvs.zope.org:/tmp/cvs-serv4283
Modified Files:
Tag: ZODB3-3_1-branch
FileStorage.py
Log Message:
restore(): We were never reading the pointer to the non-version data!
So pnv was always None, which caused abortVersion to fail when the
object being aborted had its non-version restore() instead of
store()d.
We could use a test case for this, and this should probably be ported
to the trunk. I'll let Jeremy verify the patch first.
=== ZODB3/ZODB/FileStorage.py 1.105 => 1.105.2.1 ===
--- ZODB3/ZODB/FileStorage.py:1.105 Sat Sep 28 23:40:37 2002
+++ ZODB3/ZODB/FileStorage.py Fri Oct 11 17:59:30 2002
@@ -778,6 +778,9 @@
h)
if doid != oid:
raise CorruptedDataError, h
+ if vlen > 0:
+ # non-version data pointer
+ pnv = self._file.read(8)
# Calculate the file position in the temporary file
here = self._pos + self._tfile.tell() + self._thl
# And update the temp file index