diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -2926,7 +2926,7 @@ fm.data(matched=False) fm.end() - skip = {} + skip = set() revfiles = {} match = scmutil.match(repo[None], pats, opts) found = False @@ -2955,7 +2955,7 @@ if copy: copies.setdefault(rev, {})[fn] = copy if fn in skip: - skip[copy] = True + skip.add(copy) continue files.append(fn) @@ -2984,16 +2984,16 @@ copy = copies.get(rev, {}).get(fn) if fn in skip: if copy: - skip[copy] = True + skip.add(copy) continue pstates = matches.get(parent, {}).get(copy or fn, []) if pstates or states: r = display(fm, fn, ctx, pstates, states) found = found or r if r and not diff and not all_files: - skip[fn] = True + skip.add(fn) if copy: - skip[copy] = True + skip.add(copy) del revfiles[rev] # We will keep the matches dict for the duration of the window # clear the matches dict once the window is over