diff -r 5f162f61e479 -r 5f7e3f17aece mercurial/dirstate.py --- a/mercurial/dirstate.py Sun Jan 04 19:10:42 2009 +0100 +++ b/mercurial/dirstate.py Sun Jan 04 21:32:40 2009 +0100 @@ -216,10 +216,15 @@ self._dirty = False def copy(self, source, dest): + """Mark dest as a copy of source. Unmark dest if source is None. + """ if source == dest: return self._dirty = True - self._copymap[dest] = source + if source is not None: + self._copymap[dest] = source + elif dest in self._copymap: + del self._copymap[dest] def copied(self, file): return self._copymap.get(file, None)