[PATCH 2 of 2] manifest: disallow setting the node id of an entry to None
Augie Fackler
raf at durin42.com
Mon Dec 15 09:22:45 CST 2014
# HG changeset patch
# User Augie Fackler <augie at google.com>
# Date 1418409644 18000
# Fri Dec 12 13:40:44 2014 -0500
# Node ID 2e273b5a679e41066119727405963fe72baa9081
# Parent 58e93de9c73de47de64c45a1eb18d60de9604198
manifest: disallow setting the node id of an entry to None
manifest.diff() uses None as a special value to denote the absence of
a file, so setting a file node to None means you then can't trust
manifest.diff().
This should also make future manifest work slightly easier.
diff --git a/mercurial/manifest.py b/mercurial/manifest.py
--- a/mercurial/manifest.py
+++ b/mercurial/manifest.py
@@ -17,6 +17,9 @@ class manifestdict(dict):
flags = {}
dict.__init__(self, mapping)
self._flags = flags
+ def __setitem__(self, k, v):
+ assert v != None
+ dict.__setitem__(self, k, v)
def flags(self, f):
return self._flags.get(f, "")
def withflags(self):
More information about the Mercurial-devel
mailing list