storage/file: gracefully handle not mounted pool

Fixes QubesOS/qubes-issues#4668
This commit is contained in:
Marek Marczykowski-Górecki 2019-02-19 15:22:47 +01:00
parent 27a0fe25ab
commit 318ed439ff
No known key found for this signature in database
GPG Key ID: 063938BA42CFA724

View File

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