##// END OF EJS Templates
addremove: don't call lexists, isdir, and islink...
Durham Goode -
r18559:d1582dd6 default
parent child Browse files
Show More
@@ -733,8 +733,9 def addremove(repo, pats=[], opts={}, dr
733 733 rejected = []
734 734 m.bad = lambda x, y: rejected.append(x)
735 735
736 for abs in repo.walk(m):
737 target = repo.wjoin(abs)
736 ctx = repo[None]
737 walkresults = repo.dirstate.walk(m, sorted(ctx.substate), True, False)
738 for abs in sorted(walkresults):
738 739 good = True
739 740 try:
740 741 audit_path(abs)
@@ -743,14 +744,15 def addremove(repo, pats=[], opts={}, dr
743 744 rel = m.rel(abs)
744 745 exact = m.exact(abs)
745 746
747 st = walkresults[abs]
746 748 dstate = repo.dirstate[abs]
747 749 if good and dstate == '?':
748 750 unknown.append(abs)
749 751 if repo.ui.verbose or not exact:
750 752 repo.ui.status(_('adding %s\n') % ((pats and rel) or abs))
751 753 elif (dstate != 'r' and
752 (not good or not os.path.lexists(target) or
753 (os.path.isdir(target) and not os.path.islink(target)))):
754 (not good or not st or
755 (stat.S_ISDIR(st.st_mode) and not stat.S_ISLNK(st.st_mode)))):
754 756 deleted.append(abs)
755 757 if repo.ui.verbose or not exact:
756 758 repo.ui.status(_('removing %s\n') % ((pats and rel) or abs))
General Comments 0
You need to be logged in to leave comments. Login now