Merge pull request #2 from yang/ignore-broken-symlinks

Ignore broken symlinks/files that disappear
This commit is contained in:
Łukasz Langa 2013-10-19 13:00:04 -07:00
commit f0e2d61fc3

View File

@ -29,6 +29,7 @@ from __future__ import unicode_literals
import argparse
import atexit
import datetime
import errno
import hashlib
import os
import shutil
@ -101,11 +102,16 @@ def run(verbosity=1, test=False):
for path, _, files in os.walk(current_dir):
for f in files:
p = os.path.join(path, f)
st = os.stat(p)
if not stat.S_ISREG(st.st_mode) or p == bitrot_db:
continue
paths.append(p)
total_size += st.st_size
try:
st = os.stat(p)
except OSError as ex:
if ex.errno != errno.ENOENT:
raise
else:
if not stat.S_ISREG(st.st_mode) or p == bitrot_db:
continue
paths.append(p)
total_size += st.st_size
paths.sort()
for p in paths:
st = os.stat(p)