hgext/mq.py
changeset 27832 1e38b9d731c4
parent 27831 62f3126ef678
child 27847 71853c0ba592
equal deleted inserted replaced
27831:62f3126ef678 27832:1e38b9d731c4
  2314 
  2314 
  2315       hg qimport -e existing-patch -n new-name
  2315       hg qimport -e existing-patch -n new-name
  2316 
  2316 
  2317     Returns 0 if import succeeded.
  2317     Returns 0 if import succeeded.
  2318     """
  2318     """
  2319     lock = repo.lock() # cause this may move phase
  2319     with repo.lock(): # cause this may move phase
  2320     try:
       
  2321         q = repo.mq
  2320         q = repo.mq
  2322         try:
  2321         try:
  2323             imported = q.qimport(
  2322             imported = q.qimport(
  2324                 repo, filename, patchname=opts.get('name'),
  2323                 repo, filename, patchname=opts.get('name'),
  2325                 existing=opts.get('existing'), force=opts.get('force'),
  2324                 existing=opts.get('existing'), force=opts.get('force'),
  2326                 rev=opts.get('rev'), git=opts.get('git'))
  2325                 rev=opts.get('rev'), git=opts.get('git'))
  2327         finally:
  2326         finally:
  2328             q.savedirty()
  2327             q.savedirty()
  2329     finally:
       
  2330         lock.release()
       
  2331 
  2328 
  2332     if imported and opts.get('push') and not opts.get('rev'):
  2329     if imported and opts.get('push') and not opts.get('rev'):
  2333         return q.push(repo, imported[-1])
  2330         return q.push(repo, imported[-1])
  2334     return 0
  2331     return 0
  2335 
  2332