diff mercurial/context.py @ 3127:81da3c45aabd

Move defaultrev into changectx This also causes tag on a repository with no working directory to default to tip.
author Brendan Cully <brendan@kublai.com>
date Fri, 15 Sep 2006 15:23:52 -0700
parents 345bac2bc4ec
children abd9a05fca0b
line wrap: on
line diff
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -8,10 +8,19 @@
 class changectx(object):
     """A changecontext object makes access to data related to a particular
     changeset convenient."""
-    def __init__(self, repo, changeid):
+    def __init__(self, repo, changeid=None):
         """changeid is a revision number, node, or tag"""
         self._repo = repo
 
+        if not changeid:
+            p1, p2 = self._repo.dirstate.parents()
+            self._rev = self._repo.changelog.rev(p1)
+            if self._rev == -1:
+                changeid = 'tip'
+            else:
+                self._node = p1
+                return
+
         self._node = self._repo.lookup(changeid)
         self._rev = self._repo.changelog.rev(self._node)