comparison mercurial/localrepo.py @ 8639:1323dddf8078

lookup: check for dirstate damage on failure
author Matt Mackall <mpm@selenic.com>
date Mon, 25 May 2009 10:44:37 -0500
parents fea40a677d43
children 60f9e574b6eb
comparison
equal deleted inserted replaced
8638:c6483eec6092 8639:1323dddf8078
472 if key in self.branchtags(): 472 if key in self.branchtags():
473 return self.branchtags()[key] 473 return self.branchtags()[key]
474 n = self.changelog._partialmatch(key) 474 n = self.changelog._partialmatch(key)
475 if n: 475 if n:
476 return n 476 return n
477
478 # can't find key, check if it might have come from damaged dirstate
479 if key in self.dirstate.parents():
480 raise error.Abort(_("working directory has unknown parent '%s'!")
481 % short(key))
477 try: 482 try:
478 if len(key) == 20: 483 if len(key) == 20:
479 key = hex(key) 484 key = hex(key)
480 except: 485 except:
481 pass 486 pass