[PATCH 1 of 2 STABLE] mq: fix qnext when all remaining patches are guarded
Patrick Mezard
pmezard at gmail.com
Fri Feb 3 18:49:14 UTC 2012
# HG changeset patch
# User Patrick Mezard <pmezard at gmail.com>
# Date 1328294311 -3600
# Branch stable
# Node ID c36db39b3fee5dbdea15d92ad5d62657524ea447
# Parent 3b9c18ed998553ab19321e1c8b852fa6b76eac13
mq: fix qnext when all remaining patches are guarded
When all remaining patches are guarded, qnext used to return the last of the
queue anyway.
diff --git a/hgext/mq.py b/hgext/mq.py
--- a/hgext/mq.py
+++ b/hgext/mq.py
@@ -1757,9 +1757,9 @@
for i in xrange(start, len(self.series)):
p, reason = self.pushable(i)
if p:
- break
+ return i
self.explainpushable(i)
- return i
+ return len(self.series)
if self.applied:
p = self.applied[-1].name
try:
@@ -2205,7 +2205,7 @@
@command("qnext", seriesopts, _('hg qnext [-s]'))
def next(ui, repo, **opts):
- """print the name of the next patch
+ """print the name of the next pushable patch
Returns 0 on success."""
q = repo.mq
diff --git a/tests/test-mq-guards.t b/tests/test-mq-guards.t
--- a/tests/test-mq-guards.t
+++ b/tests/test-mq-guards.t
@@ -107,6 +107,9 @@
applying b.patch
skipping c.patch - guarded by '-a'
now at: b.patch
+ $ hg qnext
+ all patches applied
+ [1]
should display b.patch
diff --git a/tests/test-mq.t b/tests/test-mq.t
--- a/tests/test-mq.t
+++ b/tests/test-mq.t
@@ -72,7 +72,7 @@
qheader print the header of the topmost or specified patch
qimport import a patch
qnew create a new patch
- qnext print the name of the next patch
+ qnext print the name of the next pushable patch
qpop pop the current patch off the stack
qprev print the name of the previous patch
qpush push the next patch onto the stack
More information about the Mercurial-devel
mailing list