equal
deleted
inserted
replaced
557 self._map.copymap.pop(f, None) |
557 self._map.copymap.pop(f, None) |
558 |
558 |
559 def remove(self, f): |
559 def remove(self, f): |
560 '''Mark a file removed.''' |
560 '''Mark a file removed.''' |
561 self._dirty = True |
561 self._dirty = True |
562 oldstate = self[f] |
|
563 size = 0 |
|
564 if self.in_merge: |
|
565 entry = self._map.get(f) |
|
566 if entry is not None: |
|
567 # backup the previous state |
|
568 if entry[0] == b'm': # merge |
|
569 size = NONNORMAL |
|
570 elif entry[0] == b'n' and entry[2] == FROM_P2: # other parent |
|
571 size = FROM_P2 |
|
572 self._map.otherparentset.add(f) |
|
573 self._updatedfiles.add(f) |
562 self._updatedfiles.add(f) |
574 self._map.removefile(f, oldstate, size) |
563 self._map.removefile(f, in_merge=self.in_merge) |
575 if size == 0: |
|
576 self._map.copymap.pop(f, None) |
|
577 |
564 |
578 def merge(self, f): |
565 def merge(self, f): |
579 '''Mark a file merged.''' |
566 '''Mark a file merged.''' |
580 if not self.in_merge: |
567 if not self.in_merge: |
581 return self.normallookup(f) |
568 return self.normallookup(f) |