# HG changeset patch # User Jun Wu # Date 1494458278 25200 # Node ID 539cbe0f8fa38b771b9056d8e7ed51e999073f02 # Parent fe3105e6e051553a2495db0a5def2c9686c0c914 flagprocessor: add a fast path when flags is 0 When flags is 0, _processflags could be a no-op instead of iterating through the flag bits. diff -r fe3105e6e051 -r 539cbe0f8fa3 mercurial/revlog.py --- a/mercurial/revlog.py Sat May 13 14:52:29 2017 -0700 +++ b/mercurial/revlog.py Wed May 10 16:17:58 2017 -0700 @@ -1359,6 +1359,9 @@ Note: If the ``raw`` argument is set, it has precedence over the operation and will only update the value of ``validatehash``. """ + # fast path: no flag processors will run + if flags == 0: + return text, True if not operation in ('read', 'write'): raise ProgrammingError(_("invalid '%s' operation ") % (operation)) # Check all flags are known.