Comments
Patch
@@ -375,10 +375,11 @@ def _fm1encodeonemarker(marker):
# mapping to read/write various marker formats
# <version> -> (decoder, encoder)
formats = {_fm0version: (_fm0readmarkers, _fm0encodeonemarker),
_fm1version: (_fm1readmarkers, _fm1encodeonemarker)}
+@util.nogc
def _readmarkers(data):
"""Read and enumerate markers from raw data"""
off = 0
diskversion = _unpack('>B', data[off:off + 1])[0]
off += 1
@@ -560,10 +561,11 @@ class obsstore(object):
Returns the number of new markers added."""
version, markers = _readmarkers(data)
return self.add(transaction, markers)
+ @util.nogc
def _load(self, markers):
for mark in markers:
self._all.append(mark)
pre, sucs = mark[:2]
self.successors.setdefault(pre, set()).add(mark)