diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-04-15 18:43:23 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-04-15 18:43:23 +0000 |
commit | ccea8172b47c34eb64e298c1a66a8199423d5e07 (patch) | |
tree | a3261457ffaeb9d412edf8760e3ab50c11e9d3a9 /pym/portage/locks.py | |
parent | 75a69ebffffbb8f442e976f21846ed9f70c7d76d (diff) | |
download | portage-ccea8172b47c34eb64e298c1a66a8199423d5e07.tar.gz portage-ccea8172b47c34eb64e298c1a66a8199423d5e07.tar.bz2 portage-ccea8172b47c34eb64e298c1a66a8199423d5e07.zip |
Bug #266211 - Handle ESTALE like ENOENT in fetch and locking code. Thanks to
Krzysztof Olędzki <ole+gentoo@ans.pl> for the initial patch.
svn path=/main/trunk/; revision=13347
Diffstat (limited to 'pym/portage/locks.py')
-rw-r--r-- | pym/portage/locks.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pym/portage/locks.py b/pym/portage/locks.py index 36bc085bf..05a65644f 100644 --- a/pym/portage/locks.py +++ b/pym/portage/locks.py @@ -74,7 +74,7 @@ def lockfile(mypath, wantnewlockfile=0, unlinkfile=0, if os.stat(lockfilename).st_gid != portage_gid: os.chown(lockfilename, -1, portage_gid) except OSError, e: - if e.errno == errno.ENOENT: # No such file or directory + if e.errno in (errno.ENOENT, errno.ESTALE): return lockfile(mypath, wantnewlockfile=wantnewlockfile, unlinkfile=unlinkfile, waiting_msg=waiting_msg, @@ -164,7 +164,7 @@ def _fstat_nlink(fd): try: return os.fstat(fd).st_nlink except EnvironmentError, e: - if e.errno == errno.ENOENT: + if e.errno in (errno.ENOENT, errno.ESTALE): # Some filesystems such as CIFS return # ENOENT which means st_nlink == 0. return 0 |