# HG changeset patch # User Martin von Zweigbergk # Date 1560967926 25200 # Node ID f93762f251d2890f683c42a84afd517881641584 # Parent 089f14dd7df33e555574b2c529dfaa94f717cbcf remotefilelog: check if RFL is enabled in getrenamedfn() override In 8a0e03f7baf4 (remotefilelog: move most setup from onetimesetup() to uisetup(), 2019-05-01), I said: All the wrappers moved in this patch check if remotefilelog is enabled before they change behavior, so it's safe to always wrap. That was clearly a lie, because getrenamedfn() didn't. That made e.g. `hg log -T {file_copies}` unbearably slow. This patch fixes that. Differential Revision: https://phab.mercurial-scm.org/D6541 diff -r 089f14dd7df3 -r f93762f251d2 hgext/remotefilelog/__init__.py --- a/hgext/remotefilelog/__init__.py Tue Jun 18 08:55:23 2019 -0700 +++ b/hgext/remotefilelog/__init__.py Wed Jun 19 11:12:06 2019 -0700 @@ -316,7 +316,7 @@ scmutil.fileprefetchhooks.add('remotefilelog', _fileprefetchhook) # disappointing hacks below - scmutil.getrenamedfn = getrenamedfn + extensions.wrapfunction(scmutil, 'getrenamedfn', getrenamedfn) extensions.wrapfunction(revset, 'filelog', filelogrevset) revset.symbols['filelog'] = revset.filelog extensions.wrapfunction(cmdutil, 'walkfilerevs', walkfilerevs) @@ -635,7 +635,10 @@ return node extensions.wrapfunction(changelog.changelog, 'add', changelogadd) -def getrenamedfn(repo, endrev=None): +def getrenamedfn(orig, repo, endrev=None): + if not isenabled(repo): + return orig(repo, endrev) + rcache = {} def getrenamed(fn, rev):