comparison mercurial/commands.py @ 25082:e30b66bb7d4d

commands: use try/except/finally
author Matt Mackall <mpm@selenic.com>
date Fri, 15 May 2015 09:56:05 -0500
parents 713b09fc9fbb
children 1ef96a3b8b89
comparison
equal deleted inserted replaced
25081:7642f119c2a2 25082:e30b66bb7d4d
2543 succs = tuple(parsenodeid(succ) for succ in successors) 2543 succs = tuple(parsenodeid(succ) for succ in successors)
2544 l = repo.lock() 2544 l = repo.lock()
2545 try: 2545 try:
2546 tr = repo.transaction('debugobsolete') 2546 tr = repo.transaction('debugobsolete')
2547 try: 2547 try:
2548 try: 2548 date = opts.get('date')
2549 date = opts.get('date') 2549 if date:
2550 if date: 2550 date = util.parsedate(date)
2551 date = util.parsedate(date) 2551 else:
2552 else: 2552 date = None
2553 date = None 2553 prec = parsenodeid(precursor)
2554 prec = parsenodeid(precursor) 2554 parents = None
2555 parents = None 2555 if opts['record_parents']:
2556 if opts['record_parents']: 2556 if prec not in repo.unfiltered():
2557 if prec not in repo.unfiltered(): 2557 raise util.Abort('cannot used --record-parents on '
2558 raise util.Abort('cannot used --record-parents on ' 2558 'unknown changesets')
2559 'unknown changesets') 2559 parents = repo.unfiltered()[prec].parents()
2560 parents = repo.unfiltered()[prec].parents() 2560 parents = tuple(p.node() for p in parents)
2561 parents = tuple(p.node() for p in parents) 2561 repo.obsstore.create(tr, prec, succs, opts['flags'],
2562 repo.obsstore.create(tr, prec, succs, opts['flags'], 2562 parents=parents, date=date,
2563 parents=parents, date=date, 2563 metadata=metadata)
2564 metadata=metadata) 2564 tr.close()
2565 tr.close() 2565 except ValueError, exc:
2566 except ValueError, exc: 2566 raise util.Abort(_('bad obsmarker input: %s') % exc)
2567 raise util.Abort(_('bad obsmarker input: %s') % exc)
2568 finally: 2567 finally:
2569 tr.release() 2568 tr.release()
2570 finally: 2569 finally:
2571 l.release() 2570 l.release()
2572 else: 2571 else: