aboutsummaryrefslogtreecommitdiff
path: root/catapult/devil/devil/utils/host_utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'catapult/devil/devil/utils/host_utils.py')
-rw-r--r--catapult/devil/devil/utils/host_utils.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/catapult/devil/devil/utils/host_utils.py b/catapult/devil/devil/utils/host_utils.py
index 580721f1..6c337cf7 100644
--- a/catapult/devil/devil/utils/host_utils.py
+++ b/catapult/devil/devil/utils/host_utils.py
@@ -2,15 +2,22 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+import logging
import os
def GetRecursiveDiskUsage(path):
"""Returns the disk usage in bytes of |path|. Similar to `du -sb |path|`."""
- running_size = os.path.getsize(path)
+ def get_size(filepath):
+ try:
+ return os.path.getsize(filepath)
+ except OSError:
+ logging.warning('File or directory no longer found: %s', filepath)
+ return 0
+
+ running_size = get_size(path)
if os.path.isdir(path):
for root, dirs, files in os.walk(path):
- running_size += sum([os.path.getsize(os.path.join(root, f))
+ running_size += sum([get_size(os.path.join(root, f))
for f in files + dirs])
return running_size
-