Show More
@@ -471,20 +471,33 b' class dirstate(object):' | |||||
471 | lookup, modified, added, unknown, ignored = [], [], [], [], [] |
|
471 | lookup, modified, added, unknown, ignored = [], [], [], [], [] | |
472 | removed, deleted, clean = [], [], [] |
|
472 | removed, deleted, clean = [], [], [] | |
473 |
|
473 | |||
|
474 | _join = self._join | |||
|
475 | lstat = os.lstat | |||
|
476 | cmap = self._copymap | |||
|
477 | dmap = self._map | |||
|
478 | ladd = lookup.append | |||
|
479 | madd = modified.append | |||
|
480 | aadd = added.append | |||
|
481 | uadd = unknown.append | |||
|
482 | iadd = ignored.append | |||
|
483 | radd = removed.append | |||
|
484 | dadd = deleted.append | |||
|
485 | cadd = clean.append | |||
|
486 | ||||
474 | for src, fn, st in self.statwalk(files, match, ignored=list_ignored): |
|
487 | for src, fn, st in self.statwalk(files, match, ignored=list_ignored): | |
475 |
|
|
488 | if fn in dmap: | |
476 |
type_, mode, size, time = |
|
489 | type_, mode, size, time = dmap[fn] | |
477 |
e |
|
490 | else: | |
478 | if list_ignored and self._ignore(fn): |
|
491 | if list_ignored and self._ignore(fn): | |
479 |
i |
|
492 | iadd(fn) | |
480 | else: |
|
493 | else: | |
481 |
u |
|
494 | uadd(fn) | |
482 | continue |
|
495 | continue | |
483 | if src == 'm': |
|
496 | if src == 'm': | |
484 | nonexistent = True |
|
497 | nonexistent = True | |
485 | if not st: |
|
498 | if not st: | |
486 | try: |
|
499 | try: | |
487 |
st = |
|
500 | st = lstat(_join(fn)) | |
488 | except OSError, inst: |
|
501 | except OSError, inst: | |
489 | if inst.errno != errno.ENOENT: |
|
502 | if inst.errno != errno.ENOENT: | |
490 | raise |
|
503 | raise | |
@@ -495,26 +508,26 b' class dirstate(object):' | |||||
495 | # XXX: what to do with file no longer present in the fs |
|
508 | # XXX: what to do with file no longer present in the fs | |
496 | # who are not removed in the dirstate ? |
|
509 | # who are not removed in the dirstate ? | |
497 | if nonexistent and type_ in "nm": |
|
510 | if nonexistent and type_ in "nm": | |
498 |
d |
|
511 | dadd(fn) | |
499 | continue |
|
512 | continue | |
500 | # check the common case first |
|
513 | # check the common case first | |
501 | if type_ == 'n': |
|
514 | if type_ == 'n': | |
502 | if not st: |
|
515 | if not st: | |
503 |
st = |
|
516 | st = lstat(_join(fn)) | |
504 | if (size >= 0 and (size != st.st_size |
|
517 | if (size >= 0 and (size != st.st_size | |
505 | or (mode ^ st.st_mode) & 0100) |
|
518 | or (mode ^ st.st_mode) & 0100) | |
506 | or fn in self._copymap): |
|
519 | or fn in self._copymap): | |
507 |
m |
|
520 | madd(fn) | |
508 | elif time != int(st.st_mtime): |
|
521 | elif time != int(st.st_mtime): | |
509 |
l |
|
522 | ladd(fn) | |
510 | elif list_clean: |
|
523 | elif list_clean: | |
511 |
c |
|
524 | cadd(fn) | |
512 | elif type_ == 'm': |
|
525 | elif type_ == 'm': | |
513 |
m |
|
526 | madd(fn) | |
514 | elif type_ == 'a': |
|
527 | elif type_ == 'a': | |
515 |
a |
|
528 | aadd(fn) | |
516 | elif type_ == 'r': |
|
529 | elif type_ == 'r': | |
517 |
r |
|
530 | radd(fn) | |
518 |
|
531 | |||
519 | return (lookup, modified, added, removed, deleted, unknown, ignored, |
|
532 | return (lookup, modified, added, removed, deleted, unknown, ignored, | |
520 | clean) |
|
533 | clean) |
General Comments 0
You need to be logged in to leave comments.
Login now