Catch PartitionNotMounted exceptions\n\nCatch PartitionNotMounted exceptions wherever details() is called. Handle in a context-appropriate manner

pull/417/head
Alan D Moore 6 years ago
parent 0f331e9b04
commit 75e34c9e02

@ -191,9 +191,14 @@ def copy_mbusb_dir_usb(usb_disk):
:return:
"""
# from .iso import iso_size
from .usb import details
from .usb import details, PartitionNotMounted
try:
usb_details = details(usb_disk)
except PartitionNotMounted as e:
log(str(e))
return False
usb_mount_path = usb_details['mount_point']
result = ''
if not os.path.exists(os.path.join(usb_mount_path, "multibootusb")):
@ -299,9 +304,13 @@ def strings(filename, _min=4):
def size_not_enough(iso_link, usb_disk):
from .iso import iso_size
from .usb import details
from .usb import details, PartitionNotMounted
isoSize = iso_size(iso_link)
try:
usb_details = details(usb_disk)
except PartitionNotMounted as e:
log(str(e))
return False
usb_size = usb_details['size_free']
return bool(isoSize > usb_size)

@ -161,8 +161,12 @@ def install_progress():
:return:
"""
from . import progressbar
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
config.usb_mount = usb_details['mount_point']
usb_size_used = usb_details['size_used']
thrd = threading.Thread(target=install_distro, name="install_progress")

@ -55,7 +55,11 @@ def cli_install_distro():
# log(config.image_path + ' failed to pass integrity check...')
# exit(1)
else:
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
exit(1)
config.usb_mount = usb_details['mount_point']
config.usb_uuid = usb_details['uuid']
config.usb_label = usb_details['label']
@ -199,4 +203,3 @@ def cli_install_syslinux():
else:
log('Failed to install syslinux on ' + config.usb_disk)
sys.exit(2)

@ -145,8 +145,12 @@ Are you SURE you want to enable it?",
if config.usb_disk:
log("Selected device " + config.usb_disk)
try:
config.usb_details = usb.details(config.usb_disk)
except usb.PartitionNotMounted as e:
log(str(e))
QtWidgets.QMessageBox.error("Error: partition not mounted", str(e))
return
config.persistence_max_size = persistence.max_disk_persistence(config.usb_disk)
config.usb_mount = config.usb_details.get('mount_point', "")
self.ui.usb_dev.setText(config.usb_disk)
@ -526,6 +530,12 @@ Are you SURE you want to enable it?",
"""
self.ui_disable_controls()
try:
usb_details = usb.details(config.usb_disk)
except usb.PartitionNotMounted as e:
log(str(e))
QtWidgets.QMessageBox.error("Error: partition not mounted", str(e))
return
if not config.usb_disk:
log("ERROR: No USB device found.")
@ -536,7 +546,7 @@ Are you SURE you want to enable it?",
log("No ISO selected.")
QtWidgets.QMessageBox.information(self, "No ISO...", "No ISO found.\n\nPlease select an ISO.")
self.ui_enable_controls()
elif usb.details(config.usb_disk)['mount_point'] == 'No_Mount':
elif usb_details['mount_point'] == 'No_Mount':
log("ERROR: USB disk is not mounted.")
QtWidgets.QMessageBox.information(self, "No Mount...", "USB disk is not mounted.\n"
"Please mount USB disk and press refresh USB button.")
@ -558,7 +568,12 @@ Are you SURE you want to enable it?",
# clean_iso_cfg_ext_dir(os.path.join(multibootusb_host_dir(), "iso_cfg_ext_dir")) # Need to be cleaned.
# extract_cfg_file(config.image_path) # Extract files from ISO
# config.distro = distro(iso_cfg_ext_dir(), config.image_path) # Detect supported distro
try:
usb_details = usb.details(config.usb_disk)
except usb.PartitionNotMounted as e:
log(str(e))
QtWidgets.QMessageBox.error("Error: partition not mounted", str(e))
return
log("MultiBoot Install: USB Disk: " + config.usb_disk)
log("MultiBoot Install: USB Label: " + config.usb_label)
log("MultiBoot Install: USB UUID: " + config.usb_uuid)

@ -98,7 +98,12 @@ def syslinux_default(usb_disk):
:version: Default version is 4. Change it if you wish. But necessary files needs to be copied accordingly
:return: Bootable USB disk :-)
"""
usb_details = usb.details(usb_disk)
try:
usb_details = usb.details(config.usb_disk)
except usb.PartitionNotMounted as e:
log(str(e))
return False
usb_fs = usb_details['file_system']
usb_mount = usb_details['mount_point']
mbr_bin = get_mbr_bin_path(usb_disk)
@ -196,7 +201,12 @@ def syslinux_distro_dir(usb_disk, iso_link, distro):
:param iso_link: Path to ISO file
:return:
"""
usb_details = usb.details(usb_disk)
try:
usb_details = usb.details(config.usb_disk)
except usb.PartitionNotMounted as e:
log(str(e))
return
usb_fs = usb_details['file_system']
usb_mount = usb_details['mount_point']
isolinux_bin_dir(iso_link)

@ -21,7 +21,12 @@ def install_distro_list():
List all distro names installed by previous install
:return: List of distro names as list
"""
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
config.usb_mount = usb_details['mount_point']
sys_cfg_file = os.path.join(config.usb_mount, "multibootusb", "syslinux.cfg")
@ -54,7 +59,12 @@ def delete_frm_file_list(iso_file_list, uninstall_distro_dir_name):
:param config.uninstall_distro_dir_name: Directory where the distro is installed
:return:
"""
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
usb_mount = usb_details['mount_point']
if iso_file_list is not None:
for f in iso_file_list:
@ -104,7 +114,11 @@ def do_uninstall_distro(target_distro, uninstall_distro_dir_name):
:param uninstall_distro_dir_name: Directory where the distro is installed
:return:
"""
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
usb_mount = usb_details['mount_point']
if platform.system() == 'Linux':
@ -229,7 +243,12 @@ def uninstall_progress():
:return:
"""
from . import progressbar
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
usb_mount = usb_details['mount_point']
if platform.system() == 'Linux':
os.sync()

@ -126,7 +126,12 @@ def update_distro_cfg_files(iso_link, usb_disk, distro, persistence=0):
Main function to modify/update distro specific strings on distro config files.
:return:
"""
usb_details = details(usb_disk)
try:
usb_details = details(config.usb_disk)
except PartitionNotMounted as e:
log(str(e))
return
usb_mount = usb_details['mount_point']
usb_uuid = usb_details['uuid']
usb_label = usb_details['label']

Loading…
Cancel
Save