perfarce

changeset 96:c05711ba688f

Fix traceback when --mq is used on pull
author Frank Kingswood <frank@kingswood-consulting.co.uk>
date Fri Apr 15 14:22:16 2011 +0100 (13 months ago)
parents 1e85d595ac2d
children 84659c81f62b
files perfarce.py
line diff
     1.1 --- a/perfarce.py	Wed Apr 13 06:45:33 2011 +0100
     1.2 +++ b/perfarce.py	Fri Apr 15 14:22:16 2011 +0100
     1.3 @@ -1,6 +1,6 @@
     1.4  # Mercurial extension to push to and pull from Perforce depots.
     1.5  #
     1.6 -# Copyright 2009-10 Frank Kingswood <frank@kingswood-consulting.co.uk>
     1.7 +# Copyright 2009-11 Frank Kingswood <frank@kingswood-consulting.co.uk>
     1.8  #
     1.9  # This software may be used and distributed according to the terms of the
    1.10  # GNU General Public License version 2, incorporated herein by reference.
    1.11 @@ -768,6 +768,9 @@
    1.12      def pullcommon(original, ui, repo, source, **opts):
    1.13          'Shared code for pull and incoming'
    1.14  
    1.15 +        if opts.get('mq',None):
    1.16 +            return True, original(ui, repo, *(source and [source] or []), **opts)
    1.17 +
    1.18          source = ui.expandpath(source or 'default')
    1.19          try:
    1.20              client = p4client(ui, repo, source)
    1.21 @@ -775,7 +778,7 @@
    1.22              raise
    1.23          except:
    1.24              if ui.traceback:ui.traceback()
    1.25 -            return True, original(ui, repo, source, **opts)
    1.26 +            return True, original(ui, repo, *(source and [source] or []), **opts)
    1.27  
    1.28          # if present, --rev will be the last Perforce changeset number to get
    1.29          stoprev = opts.get('rev')
    1.30 @@ -824,6 +827,9 @@
    1.31      def pushcommon(out, original, ui, repo, dest, **opts):
    1.32          'Shared code for push and outgoing'
    1.33  
    1.34 +        if opts.get('mq',None):
    1.35 +            return True, original(ui, repo, *(dest and [dest] or []), **opts)
    1.36 +
    1.37          dest = ui.expandpath(dest or 'default-push', dest or 'default')
    1.38          try:
    1.39              client = p4client(ui, repo, dest)
    1.40 @@ -831,7 +837,7 @@
    1.41              raise
    1.42          except:
    1.43              if ui.traceback:ui.traceback()
    1.44 -            return True, original(ui, repo, dest, **opts)
    1.45 +            return True, original(ui, repo, *(dest and [dest] or []), **opts)
    1.46  
    1.47          p4rev, p4id = client.find(base=True)
    1.48          ctx1 = repo[p4rev]
    1.49 @@ -951,7 +957,7 @@
    1.50  
    1.51  # --------------------------------------------------------------------------
    1.52  
    1.53 -def incoming(original, ui, repo, source='default', **opts):
    1.54 +def incoming(original, ui, repo, source=None, **opts):
    1.55      '''show changes that would be pulled from the p4 source repository
    1.56      Returns 0 if there are incoming changes, 1 otherwise.
    1.57      '''