Mercurial > public > mercurial-scm > hg
diff mercurial/hg.py @ 477:520540fd6b64
Handle errors in .hgtags or hgrc [tags] section more gracefully.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Handle errors in .hgtags or hgrc [tags] section more gracefully.
manifest hash: 85c62e1bf3ad78b243ee60f43c3c577700a8c96d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
iD8DBQFCvp6jW7P1GVgWeRoRAo23AKCZRU22IweynNtf9k3q4pEyqEaozACeMIRV
6tNOkr3h6jTiMZ2bJgPeabg=
=+U5s
-----END PGP SIGNATURE-----
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Sun, 26 Jun 2005 13:25:07 +0100 |
parents | 4c7f687e4313 |
children | 934279f3ca53 |
line wrap: on
line diff
--- a/mercurial/hg.py Sun Jun 26 12:04:59 2005 +0100 +++ b/mercurial/hg.py Sun Jun 26 13:25:07 2005 +0100 @@ -373,7 +373,7 @@ def tags(self): '''return a mapping of tag to node''' - if not self.tagscache: + if not self.tagscache: self.tagscache = {} try: # read each head of the tags file, ending with the tip @@ -386,11 +386,20 @@ for l in fl.revision(r).splitlines(): if l: n, k = l.split(" ", 1) - self.tagscache[k.strip()] = bin(n) - except KeyError: pass + try: + bin_n = bin(n) + except TypeError: + bin_n = '' + self.tagscache[k.strip()] = bin_n + except KeyError: + pass for k, n in self.ui.configitems("tags"): - self.tagscache[k] = bin(n) - + try: + bin_n = bin(n) + except TypeError: + bin_n = '' + self.tagscache[k] = bin_n + self.tagscache['tip'] = self.changelog.tip() return self.tagscache @@ -398,7 +407,7 @@ def tagslist(self): '''return a list of tags ordered by revision''' l = [] - for t,n in self.tags().items(): + for t, n in self.tags().items(): try: r = self.changelog.rev(n) except: