# HG changeset patch # User Matt Harbison # Date 1433469356 14400 # Node ID 7ce5a3230441f55b9c4349a9fbe84835aab93c20 # Parent 9c1bcd95b3ff5402bab6904e45094b42c07badf3 cat: replace match.bad() monkey patching with match.badmatch() No known issues with the previous code since it restored the original method, but this is cleaner. diff -r 9c1bcd95b3ff -r 7ce5a3230441 mercurial/cmdutil.py --- a/mercurial/cmdutil.py Thu Jun 04 21:53:16 2015 -0400 +++ b/mercurial/cmdutil.py Thu Jun 04 21:55:56 2015 -0400 @@ -2437,22 +2437,16 @@ return 0 # Don't warn about "missing" files that are really in subrepos - bad = matcher.bad - def badfn(path, msg): for subpath in ctx.substate: if path.startswith(subpath): return - bad(path, msg) - - matcher.bad = badfn - - for abs in ctx.walk(matcher): + matcher.bad(path, msg) + + for abs in ctx.walk(matchmod.badmatch(matcher, badfn)): write(abs) err = 0 - matcher.bad = bad - for subpath in sorted(ctx.substate): sub = ctx.sub(subpath) try: