Simplify record switch in kwtemplater.overwrite
1) use kwtemplater.record attribute for clarity
2) drop optional context argument; consider the speed loss by
duplicating the dictionary lookup repo['.'] as negligible
--- a/hgkw/keyword.py Sat May 01 20:49:40 2010 +0200
+++ b/hgkw/keyword.py Sun May 02 22:39:43 2010 +0200
@@ -160,12 +160,9 @@
Caveat: localrepository._link fails on Windows.'''
return self.match(path) and not 'l' in flagfunc(path)
- def overwrite(self, node, expand, candidates, recctx=None):
+ def overwrite(self, node, expand, candidates):
'''Overwrites selected files expanding/shrinking keywords.'''
- if recctx is None:
- ctx = self.repo[node]
- else:
- ctx = recctx
+ ctx = self.repo[node]
mf = ctx.manifest()
if node is not None: # commit, record
candidates = [f for f in ctx.files() if f in mf]
@@ -175,7 +172,7 @@
msg = (expand and _('overwriting %s expanding keywords\n')
or _('overwriting %s shrinking keywords\n'))
for f in candidates:
- if recctx is None:
+ if not self.record:
data = self.repo.file(f).read(mf[f])
else:
data = self.repo.wread(f)
@@ -507,7 +504,7 @@
ret = orig(ui, repo, commitfunc, *pats, **opts)
recctx = repo['.']
if ctx != recctx:
- kwt.overwrite('.', True, None, recctx)
+ kwt.overwrite('.', True, None)
return ret
finally:
wlock.release()