diff -r c10eaf1210cd -r 64f284da1278 hgext/mq.py --- a/hgext/mq.py Tue Jul 20 18:29:00 2010 +0900 +++ b/hgext/mq.py Tue Jul 20 20:37:29 2010 +0530 @@ -2418,6 +2418,18 @@ elif rev not in (cl.ancestor(p[0], rev), cl.ancestor(p[1], rev)): update = False + q = repo.mq + if q.applied: + if rev == cl.ancestor(repo.lookup('qtip'), rev): + q.applied_dirty = True + start = 0 + end = len(q.applied) + applied_list = [i.node for i in q.applied] + if rev in applied_list: + start = applied_list.index(rev) + del q.applied[start:end] + q.save_dirty() + repo.mq.strip(repo, rev, backup=backup, update=update, force=opts['force']) return 0