Added some error handling for umount().
This commit is contained in:
parent
2ef7be9787
commit
d2804993db
|
|
@ -313,9 +313,19 @@ class Partition():
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def unmount(self):
|
def unmount(self):
|
||||||
if sys_command(f'/usr/bin/umount {self.path}').exit_code == 0:
|
try:
|
||||||
self.mountpoint = None
|
exit_code = sys_command(f'/usr/bin/umount {self.path}').exit_code
|
||||||
return True
|
except SysCallError as err:
|
||||||
|
exit_code = err.exit_code
|
||||||
|
|
||||||
|
# Without to much research, it seams that low error codes are errors.
|
||||||
|
# And above 8k is indicators such as "/dev/x not mounted.".
|
||||||
|
# So anything in between 0 and 8k are errors (?).
|
||||||
|
if exit_code > 0 and exit_code < 8000:
|
||||||
|
raise err
|
||||||
|
|
||||||
|
self.mountpoint = None
|
||||||
|
return True
|
||||||
|
|
||||||
def filesystem_supported(self):
|
def filesystem_supported(self):
|
||||||
"""
|
"""
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue