# HG changeset patch # User Eric Hopper # Date 1127858308 25200 # Node ID a0c68981a5f44274e89950cdd136b6483cd7671d # Parent bf6c91cb816fefee65f76430233e94cc1946e5d6 Fix misleading abort message when permissions are bad. diff -r bf6c91cb816f -r a0c68981a5f4 mercurial/localrepo.py --- a/mercurial/localrepo.py Tue Sep 27 14:53:11 2005 -0700 +++ b/mercurial/localrepo.py Tue Sep 27 14:58:28 2005 -0700 @@ -9,7 +9,7 @@ import filelog, manifest, changelog, dirstate, repo from node import * from demandload import * -demandload(globals(), "re lock transaction tempfile stat mdiff") +demandload(globals(), "re lock transaction tempfile stat mdiff errno") class localrepository: def __init__(self, ui, path=None, create=0): @@ -1221,7 +1221,9 @@ t = self.file(f).read(get[f]) try: self.wwrite(f, t) - except IOError: + except IOError, e: + if e.errno != errno.ENOENT: + raise os.makedirs(os.path.dirname(self.wjoin(f))) self.wwrite(f, t) util.set_exec(self.wjoin(f), mf2[f])