Merge from crew-stable
authorBryan O'Sullivan <bryano@fb.com>
Wed, 15 Aug 2012 16:33:26 -0700
changeset 17375 499e284f3f32
parent 17372 ff3c89cf1477 (current diff)
parent 17374 0cec762790ed (diff)
child 17376 3738d6254bd3
Merge from crew-stable
--- a/mercurial/store.py	Wed Aug 15 23:03:40 2012 +0200
+++ b/mercurial/store.py	Wed Aug 15 16:33:26 2012 -0700
@@ -7,7 +7,7 @@
 
 from i18n import _
 import osutil, scmutil, util
-import os, stat
+import os, stat, errno
 
 _sha = util.sha1
 
@@ -398,12 +398,14 @@
     def datafiles(self):
         rewrite = False
         existing = []
-        for f in self.fncache:
+        for f in sorted(self.fncache):
             ef = self.encode(f)
             try:
                 yield f, ef, self.getsize(ef)
                 existing.append(f)
-            except OSError:
+            except OSError, err:
+                if err.errno != errno.ENOENT:
+                    raise
                 # nonexistent entry
                 rewrite = True
         if rewrite: