Skip to content
Snippets Groups Projects
Commit 351a9292 authored by Matt Mackall's avatar Matt Mackall
Browse files

record: use command wrapper properly for qnew/qrefresh (issue3001)

parent 0cc7f23c
No related branches found
Tags 1.9.3
No related merge requests found
......@@ -386,7 +386,10 @@
dorecord(ui, repo, commands.commit, 'commit', False, *pats, **opts)
def qrefresh(ui, repo, *pats, **opts):
def qrefresh(origfn, ui, repo, *pats, **opts):
if not opts['interactive']:
return origfn(ui, repo, *pats, **opts)
mq = extensions.find('mq')
def committomq(ui, repo, *pats, **opts):
......@@ -419,6 +422,11 @@
dorecord(ui, repo, committomq, 'qnew', False, *pats, **opts)
def qnew(origfn, ui, repo, patch, *args, **opts):
if opts['interactive']:
return qrecord(ui, repo, patch, *args, **opts)
return origfn(ui, repo, patch, *args, **opts)
def dorecord(ui, repo, commitfunc, cmdsuggest, backupall, *pats, **opts):
if not ui.interactive():
raise util.Abort(_('running non-interactively, use %s instead') %
......@@ -584,8 +592,8 @@
mq.cmdtable['^qnew'][1][:] + diffopts,
_('hg qrecord [OPTION]... PATCH [FILE]...'))
_wrapcmd('qnew', mq.cmdtable, qrecord, _("interactively record a new patch"))
_wrapcmd('qnew', mq.cmdtable, qnew, _("interactively record a new patch"))
_wrapcmd('qrefresh', mq.cmdtable, qrefresh,
_("interactively select changes to refresh"))
def _wrapcmd(cmd, table, wrapfn, msg):
......@@ -588,11 +596,6 @@
_wrapcmd('qrefresh', mq.cmdtable, qrefresh,
_("interactively select changes to refresh"))
def _wrapcmd(cmd, table, wrapfn, msg):
'''wrap the command'''
def wrapper(orig, *args, **kwargs):
if kwargs['interactive']:
return wrapfn(*args, **kwargs)
return orig(*args, **kwargs)
entry = extensions.wrapcommand(table, cmd, wrapper)
entry = extensions.wrapcommand(table, cmd, wrapfn)
entry[1].append(('i', 'interactive', None, msg))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment