Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/context.py @ 3454:23ede9e7ad4d
filecontext: report False for missing files
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 18 Oct 2006 14:06:48 -0500 |
parents | 357b5589dc62 |
children | 3b4e00cba57a |
comparison
equal
deleted
inserted
replaced
3453:dba3cadef789 | 3454:23ede9e7ad4d |
---|---|
149 elif name == '_filenode': | 149 elif name == '_filenode': |
150 try: | 150 try: |
151 if '_fileid' in self.__dict__: | 151 if '_fileid' in self.__dict__: |
152 self._filenode = self._filelog.lookup(self._fileid) | 152 self._filenode = self._filelog.lookup(self._fileid) |
153 else: | 153 else: |
154 self._filenode = self._changectx.filenode(self._path) | 154 try: |
155 self._filenode = self._changectx.filenode(self._path) | |
156 except: | |
157 self._filenode = self._filerev = None | |
155 except revlog.RevlogError, inst: | 158 except revlog.RevlogError, inst: |
156 raise repo.LookupError(str(inst)) | 159 raise repo.LookupError(str(inst)) |
157 return self._filenode | 160 return self._filenode |
158 elif name == '_filerev': | 161 elif name == '_filerev': |
159 self._filerev = self._filelog.rev(self._filenode) | 162 self._filerev = self._filelog.rev(self._filenode) |
160 return self._filerev | 163 return self._filerev |
161 else: | 164 else: |
162 raise AttributeError, name | 165 raise AttributeError, name |
163 | 166 |
164 def __nonzero__(self): | 167 def __nonzero__(self): |
165 return self._filerev != nullid | 168 return self._filenode != None |
166 | 169 |
167 def __str__(self): | 170 def __str__(self): |
168 return "%s@%s" % (self.path(), short(self.node())) | 171 return "%s@%s" % (self.path(), short(self.node())) |
169 | 172 |
170 def __repr__(self): | 173 def __repr__(self): |