context: remove seemingly impossible code branch
I'm not a Python expert, but I can't think of a way that the following
branch can ever be hit:
def _changeid(self):
if r'_changeid' in self.__dict__:
return self._changeid
It seems to me that if that condition is true, then this function
would not have been called. The only exception I can think of is if a
reference to the function had been stored beforehand, something like this:
c = fctx.__dict__['_changeid']
fctx._changeid
c()
But that seems like very unlikely code to exist.
The condition was added in
921b64e1f7b9 (filecontext: use 'is not
None' to check for filelog existence, 2013-05-01) as a "bonus" change
(in addition to what the patch was actually about)
Differential Revision: https://phab.mercurial-scm.org/D5289
--- a/mercurial/context.py Mon Nov 19 21:11:08 2018 +0300
+++ b/mercurial/context.py Mon Nov 19 23:08:09 2018 -0800
@@ -562,9 +562,7 @@
@propertycache
def _changeid(self):
- if r'_changeid' in self.__dict__:
- return self._changeid
- elif r'_changectx' in self.__dict__:
+ if r'_changectx' in self.__dict__:
return self._changectx.rev()
elif r'_descendantrev' in self.__dict__:
# this file context was created from a revision with a known