##// END OF EJS Templates
walk: refactor walk plan...
Matt Mackall -
r8683:99eb4dcb default
parent child Browse files
Show More
@@ -460,21 +460,20 b' class dirstate(object):'
460 460 work = []
461 461 wadd = work.append
462 462
463 if match.anypats():
464 #match.match with patterns
463 if match.anypats(): # match.match or .exact with patterns
465 464 dostep3 = True
466 nomatches = False
467 elif not match.files():
468 #match.always or match.never
469 dostep3 = matchfn('')
470 nomatches = not dostep3
471 else:
472 #match.exact or match.match without pattern
465 exact = False
466 elif matchfn == match.exact: # match.exact without patterns
467 dostep3 = False
468 exact = True
469 elif match.files(): # match.match without patterns
473 470 dostep3 = False
474 nomatches = matchfn == match.exact
471 exact = False
472 else: # match.always
473 dostep3 = True
474 exact = False
475 475
476 if nomatches:
477 #skip step 2
476 if exact: # skip step 2
478 477 dirignore = util.always
479 478
480 479 files = set(match.files())
@@ -551,7 +550,7 b' class dirstate(object):'
551 550 results[nf] = None
552 551
553 552 # step 3: report unseen items in the dmap hash
554 if dostep3 and not nomatches:
553 if dostep3 and not exact:
555 554 visit = sorted([f for f in dmap if f not in results and matchfn(f)])
556 555 for nf, st in zip(visit, util.statfiles([join(i) for i in visit])):
557 556 if not st is None and not getkind(st.st_mode) in (regkind, lnkkind):
General Comments 0
You need to be logged in to leave comments. Login now