equal
deleted
inserted
replaced
2923 fm.startitem() |
2923 fm.startitem() |
2924 fm.write('text', '%s', l.line[p:]) |
2924 fm.write('text', '%s', l.line[p:]) |
2925 fm.data(matched=False) |
2925 fm.data(matched=False) |
2926 fm.end() |
2926 fm.end() |
2927 |
2927 |
2928 skip = {} |
2928 skip = set() |
2929 revfiles = {} |
2929 revfiles = {} |
2930 match = scmutil.match(repo[None], pats, opts) |
2930 match = scmutil.match(repo[None], pats, opts) |
2931 found = False |
2931 found = False |
2932 follow = opts.get('follow') |
2932 follow = opts.get('follow') |
2933 |
2933 |
2952 copied = ctx[fn].renamed() |
2952 copied = ctx[fn].renamed() |
2953 copy = copied and copied[0] |
2953 copy = copied and copied[0] |
2954 if copy: |
2954 if copy: |
2955 copies.setdefault(rev, {})[fn] = copy |
2955 copies.setdefault(rev, {})[fn] = copy |
2956 if fn in skip: |
2956 if fn in skip: |
2957 skip[copy] = True |
2957 skip.add(copy) |
2958 if fn in skip: |
2958 if fn in skip: |
2959 continue |
2959 continue |
2960 files.append(fn) |
2960 files.append(fn) |
2961 |
2961 |
2962 if fn not in matches[rev]: |
2962 if fn not in matches[rev]: |
2982 for fn in sorted(revfiles.get(rev, [])): |
2982 for fn in sorted(revfiles.get(rev, [])): |
2983 states = matches[rev][fn] |
2983 states = matches[rev][fn] |
2984 copy = copies.get(rev, {}).get(fn) |
2984 copy = copies.get(rev, {}).get(fn) |
2985 if fn in skip: |
2985 if fn in skip: |
2986 if copy: |
2986 if copy: |
2987 skip[copy] = True |
2987 skip.add(copy) |
2988 continue |
2988 continue |
2989 pstates = matches.get(parent, {}).get(copy or fn, []) |
2989 pstates = matches.get(parent, {}).get(copy or fn, []) |
2990 if pstates or states: |
2990 if pstates or states: |
2991 r = display(fm, fn, ctx, pstates, states) |
2991 r = display(fm, fn, ctx, pstates, states) |
2992 found = found or r |
2992 found = found or r |
2993 if r and not diff and not all_files: |
2993 if r and not diff and not all_files: |
2994 skip[fn] = True |
2994 skip.add(fn) |
2995 if copy: |
2995 if copy: |
2996 skip[copy] = True |
2996 skip.add(copy) |
2997 del revfiles[rev] |
2997 del revfiles[rev] |
2998 # We will keep the matches dict for the duration of the window |
2998 # We will keep the matches dict for the duration of the window |
2999 # clear the matches dict once the window is over |
2999 # clear the matches dict once the window is over |
3000 if not revfiles: |
3000 if not revfiles: |
3001 matches.clear() |
3001 matches.clear() |