Mercurial > hg
comparison mercurial/dirstatemap.py @ 48050:2ac0e6b23222
dirstate: Replace dropfile with drop_item_and_copy_source
Those removing a DirstateItem and a copy source are always done together
Differential Revision: https://phab.mercurial-scm.org/D11493
author | Simon Sapin <simon.sapin@octobus.net> |
---|---|
date | Thu, 23 Sep 2021 15:36:43 +0200 |
parents | 76f1c76186a1 |
children | 98c0408324e6 |
comparison
equal
deleted
inserted
replaced
48049:29aa633815db | 48050:2ac0e6b23222 |
---|---|
604 # copy information are now outdated | 604 # copy information are now outdated |
605 # (maybe new information should be in directly passed to this function) | 605 # (maybe new information should be in directly passed to this function) |
606 self.copymap.pop(filename, None) | 606 self.copymap.pop(filename, None) |
607 | 607 |
608 if not (p1_tracked or p2_tracked or wc_tracked): | 608 if not (p1_tracked or p2_tracked or wc_tracked): |
609 self.dropfile(filename) | 609 self._rustmap.drop_item_and_copy_source(filename) |
610 elif merged: | 610 elif merged: |
611 # XXX might be merged and removed ? | 611 # XXX might be merged and removed ? |
612 entry = self.get(filename) | 612 entry = self.get(filename) |
613 if entry is not None and entry.tracked: | 613 if entry is not None and entry.tracked: |
614 # XXX mostly replicate dirstate.other parent. We should get | 614 # XXX mostly replicate dirstate.other parent. We should get |
682 entry = self.get(f) | 682 entry = self.get(f) |
683 if entry is None: | 683 if entry is None: |
684 return False | 684 return False |
685 else: | 685 else: |
686 if entry.added: | 686 if entry.added: |
687 self._rustmap.copymap().pop(f, None) | 687 self._rustmap.drop_item_and_copy_source(f) |
688 self._rustmap.dropfile(f) | |
689 else: | 688 else: |
690 self._rustmap.removefile(f, in_merge=True) | 689 self._rustmap.removefile(f, in_merge=True) |
691 return True | 690 return True |
692 | 691 |
693 def removefile(self, *args, **kwargs): | 692 def removefile(self, *args, **kwargs): |
694 return self._rustmap.removefile(*args, **kwargs) | 693 return self._rustmap.removefile(*args, **kwargs) |
695 | |
696 def dropfile(self, f, *args, **kwargs): | |
697 self._rustmap.copymap().pop(f, None) | |
698 self._rustmap.dropfile(f, *args, **kwargs) | |
699 | 694 |
700 def clearambiguoustimes(self, *args, **kwargs): | 695 def clearambiguoustimes(self, *args, **kwargs): |
701 return self._rustmap.clearambiguoustimes(*args, **kwargs) | 696 return self._rustmap.clearambiguoustimes(*args, **kwargs) |
702 | 697 |
703 def nonnormalentries(self): | 698 def nonnormalentries(self): |