瀏覽代碼

storage/file: gracefully handle not mounted pool

Fixes QubesOS/qubes-issues#4668
Marek Marczykowski-Górecki 5 年之前
父節點
當前提交
318ed439ff
共有 1 個文件被更改,包括 10 次插入4 次删除
  1. 10 4
      qubes/storage/file.py

+ 10 - 4
qubes/storage/file.py

@@ -155,13 +155,19 @@ class FilePool(qubes.storage.Pool):
 
     @property
     def size(self):
-        statvfs = os.statvfs(self.dir_path)
-        return statvfs.f_frsize * statvfs.f_blocks
+        try:
+            statvfs = os.statvfs(self.dir_path)
+            return statvfs.f_frsize * statvfs.f_blocks
+        except FileNotFoundError:
+            return 0
 
     @property
     def usage(self):
-        statvfs = os.statvfs(self.dir_path)
-        return statvfs.f_frsize * (statvfs.f_blocks - statvfs.f_bfree)
+        try:
+            statvfs = os.statvfs(self.dir_path)
+            return statvfs.f_frsize * (statvfs.f_blocks - statvfs.f_bfree)
+        except FileNotFoundError:
+            return 0
 
     def included_in(self, app):
         ''' Check if there is pool containing this one - either as a