From: Eric S. Raymond Date: Thu, 20 Nov 2014 10:52:27 +0000 (-0500) Subject: Fix some confusion in sequence computation. Regression tests pass. X-Git-Tag: 0.11~2 X-Git-Url: http://thyrsus.com/gitweb/?a=commitdiff_plain;h=3dbe569648d02b35d063303bcb6187c8ef35c395;p=src.git Fix some confusion in sequence computation. Regression tests pass. --- diff --git a/src b/src index ede1ea9..68a4b98 100755 --- a/src +++ b/src @@ -895,12 +895,12 @@ class CommandContext: "Set the range to all revisions." self.start = 1 self.end = len(metadata) - self.seq = range(self.start, self.end+1) + self.seq = [metadata.by_revno(i) for i in range(self.start, self.end+1)] def select_tip(self, metadata): "Set the range to the tip revision." self.start = len(metadata) self.end = None - self.seq = [self.start] + self.seq = [metadata.by_revno(self.start)] def __contains__(self, i): "Does the spec contain the given revno?" if self.seq is None: @@ -1243,9 +1243,8 @@ def cat_method(*args): if ctx.is_empty(): ctx.select_tip(metadata) with backend.lifter(arg): - for item in metadata.revlist: - if item.revno in ctx: - backend.cat(arg, item.native) + for item in ctx.seq: + backend.cat(arg, item.native) def diff_method(*args): "Dump diffs between revisions to standard output."