# HG changeset patch # User Yuya Nishihara # Date 1270566654 -32400 # Node ID a84f14228b1d4cd06ece89e0cc4d51dfc0c91bcf # Parent 9e643a0c327809181a7f877b0278c01662d188ef mq: fix opts['unified'] = '0' to take effect when qdiff --stat `opts['unified'] = '0'` tries to reduce the number of lines to be processed by patch.diffstat, but here it does not affect diffopts, thus it does not make sense. Instead, we can change `diffopts.context` directly. Added test case for qdiff --stat. diff -r 9e643a0c3278 -r a84f14228b1d hgext/mq.py --- a/hgext/mq.py Mon Apr 26 15:32:23 2010 +0200 +++ b/hgext/mq.py Wed Apr 07 00:10:54 2010 +0900 @@ -477,8 +477,6 @@ def printdiff(self, repo, diffopts, node1, node2=None, files=None, fp=None, changes=None, opts={}): stat = opts.get('stat') - if stat: - opts['unified'] = '0' m = cmdutil.match(repo, files, opts) if fp is None: @@ -487,6 +485,7 @@ def write(s, **kw): fp.write(s) if stat: + diffopts.context = 0 width = self.ui.interactive() and util.termwidth() or 80 chunks = patch.diff(repo, node1, node2, m, changes, diffopts) for chunk, label in patch.diffstatui(util.iterlines(chunks), diff -r 9e643a0c3278 -r a84f14228b1d tests/test-mq-qdiff --- a/tests/test-mq-qdiff Mon Apr 26 15:32:23 2010 +0200 +++ b/tests/test-mq-qdiff Wed Apr 07 00:10:54 2010 +0900 @@ -68,3 +68,5 @@ echo a >> lines hg qdiff +echo % qdiff --stat +hg qdiff --stat diff -r 9e643a0c3278 -r a84f14228b1d tests/test-mq-qdiff.out --- a/tests/test-mq-qdiff.out Mon Apr 26 15:32:23 2010 +0200 +++ b/tests/test-mq-qdiff.out Wed Apr 07 00:10:54 2010 +0900 @@ -122,3 +122,6 @@ 8 9 +a +% qdiff --stat + lines | 7 +++++-- + 1 files changed, 5 insertions(+), 2 deletions(-)