# HG changeset patch # User Christian Ebert # Date 2010-10-08 17:39:46 # Node ID 799cec3ba3b1e4febc6cad9ae4d11702af6d2513 # Parent 7d91628928995fc16bc00161d5fb00456c3595ab keyword: disable expansion in kwfilelog.read() if file renamed in node Simplifies kwfilelog.cmp() and avoids fiddling with/importing revlog. Reorder imports alphabetically. diff --git a/hgext/keyword.py b/hgext/keyword.py --- a/hgext/keyword.py +++ b/hgext/keyword.py @@ -82,8 +82,8 @@ like CVS' $Log$, are not supported. A ke {desc}" expands to the first line of the changeset description. ''' -from mercurial import commands, cmdutil, dispatch, filelog, revlog, extensions -from mercurial import patch, localrepo, templater, templatefilters, util, match +from mercurial import commands, cmdutil, dispatch, filelog, extensions +from mercurial import localrepo, match, patch, templatefilters, templater, util from mercurial.hgweb import webcommands from mercurial.i18n import _ import re, shutil, tempfile @@ -263,6 +263,8 @@ class kwfilelog(filelog.filelog): def read(self, node): '''Expands keywords when reading filelog.''' data = super(kwfilelog, self).read(node) + if self.renamed(node): + return data return self.kwt.expand(self.path, node, data) def add(self, text, meta, tr, link, p1=None, p2=None): @@ -273,10 +275,7 @@ class kwfilelog(filelog.filelog): def cmp(self, node, text): '''Removes keyword substitutions for comparison.''' text = self.kwt.shrink(self.path, text) - if self.renamed(node): - t2 = super(kwfilelog, self).read(node) - return t2 != text - return revlog.revlog.cmp(self, node, text) + return super(kwfilelog, self).cmp(node, text) def _status(ui, repo, kwt, *pats, **opts): '''Bails out if [keyword] configuration is not active.