util: handle EINVAL in _statfiles_clustered()
authorPatrick Mezard <pmezard@gmail.com>
Sat, 18 Oct 2008 20:50:08 +0200
changeset 7137 0c63b87d9bce
parent 7136 d834ed27199f
child 7140 beeeb0cd73e7
util: handle EINVAL in _statfiles_clustered() Raised when osutil.listdir is called on a non-directory entry.
mercurial/util.py
--- a/mercurial/util.py	Sat Oct 18 11:43:45 2008 -0700
+++ b/mercurial/util.py	Sat Oct 18 20:50:08 2008 +0200
@@ -865,7 +865,9 @@
                 # handle directory not found in Python version prior to 2.5
                 # Python <= 2.4 returns native Windows code 3 in errno
                 # Python >= 2.5 returns ENOENT and adds winerror field
-                if err.errno not in (3, errno.ENOENT, errno.ENOTDIR):
+                # EINVAL is raised if dir is not a directory.
+                if err.errno not in (3, errno.ENOENT, errno.EINVAL,
+                                     errno.ENOTDIR):
                     raise
                 dmap = {}
             cache = dircache.setdefault(dir, dmap)