[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[snapshot/master] Do not enqueue dirs that do not exist



---
 fsck/check-1/hash |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/fsck/check-1/hash b/fsck/check-1/hash
index 95ddd3a..48a9be5 100755
--- a/fsck/check-1/hash
+++ b/fsck/check-1/hash
@@ -79,15 +79,16 @@ try:
         b = range(256)
         random.shuffle(b)
         for byte1 in b:
-            if verbose >= 2: print "queueing %02x%02x:"%(byte1, byte2); sys.stdout.flush()
             p = os.path.join(farmpath, '%02x'%byte1, '%02x'%byte2)
-            for filename in os.listdir(p):
-                if re.match('[0-9a-f]{40}$', filename) is None:
-                    errors.append((filename, 'Invalid name'))
-                    if verbose >= 2: print "Invalid name %s"%(filename); sys.stdout.flush()
-                    continue
-                inqueue.append((p,filename))
-            if len(inqueue) > 2000: enqueue(inqueue)
+            if os.path.exists(p):
+                if verbose >= 2: print "queueing %02x%02x:"%(byte1, byte2); sys.stdout.flush()
+                for filename in os.listdir(p):
+                    if re.match('[0-9a-f]{40}$', filename) is None:
+                        errors.append((filename, 'Invalid name'))
+                        if verbose >= 2: print "Invalid name %s"%(filename); sys.stdout.flush()
+                        continue
+                    inqueue.append((p,filename))
+                if len(inqueue) > 2000: enqueue(inqueue)
     enqueue(inqueue)
 finally:
     for x in xrange ( numthreads ):
-- 
1.7.2.5



Reply to: