# HG changeset patch # User Simon Law # Date 1194988008 18000 # Node ID de0d2b10ed66257b0ce606ed04d9de1c74c58fcd # Parent 5fbe5f2ac36a6665c1598bdd8c79cd000a8c94b9 hg fupdate should not break if Mercurial does not support --rev diff -r 5fbe5f2ac36a -r de0d2b10ed66 forest.py --- a/forest.py Thu Sep 06 11:25:17 2007 -0400 +++ b/forest.py Tue Nov 13 16:06:48 2007 -0500 @@ -597,8 +597,10 @@ if paths: # Extract revisions from # syntax in path. paths[0], revs = parseurl(paths[0], opts['rev'])[0:2] + elif 'rev' in opts: + revs = opts['rev'] else: - revs = opts['rev'] + revs = None die_on_numeric_revs(revs) for tree in self.trees: rpath = relpath(self.top().root, tree.root) @@ -1241,16 +1243,21 @@ walkhg=walkhgenabled(ui, opts['walkhg'])) def function(tree, ignore, opts): - rev = opts['rev'] + if 'rev' in opts: + rev = opts['rev'] or None + else: + rev = None if type(rev) is str: rev = rev elif rev: rev = rev[0] - else: - rev = None try: - commands.update(ui, tree.getrepo(ui), - rev=rev, clean=opts['clean'], date=opts['date']) + if rev is not None: + commands.update(ui, tree.getrepo(ui), + rev=rev, clean=opts['clean'], date=opts['date']) + else: + commands.update(ui, tree.getrepo(ui), + clean=opts['clean'], date=opts['date']) except Exception, err: ui.warn(_("skipped: %s\n") % err) tree.repo.transaction().__del__()