Default to unknown on partition types (#2037)

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
This commit is contained in:
Daniel Girtler 2023-09-14 20:04:25 +10:00 committed by GitHub
parent 2252dcf9bb
commit c8e0b9a4d6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 4 deletions

View File

@ -20,6 +20,7 @@ from ..exceptions import DiskError, SysCallError
from ..general import SysCommand
from ..output import debug, error
from ..storage import storage
from ..output import info
if TYPE_CHECKING:
_: Any
@ -509,13 +510,15 @@ class BDevice:
class PartitionType(Enum):
Boot = 'boot'
Primary = 'primary'
_Unknown = 'unknown'
@classmethod
def get_type_from_code(cls, code: int) -> PartitionType:
if code == parted.PARTITION_NORMAL:
return PartitionType.Primary
raise DiskError(f'Partition code not supported: {code}')
else:
info(f'Partition code not supported: {code}')
return PartitionType._Unknown
def get_partition_code(self) -> Optional[int]:
if self == PartitionType.Primary:
@ -659,9 +662,9 @@ class PartitionModification:
if partition_info.btrfs_subvol_infos:
mountpoint = None
subvol_mods = []
for info in partition_info.btrfs_subvol_infos:
for i in partition_info.btrfs_subvol_infos:
subvol_mods.append(
SubvolumeModification.from_existing_subvol_info(info)
SubvolumeModification.from_existing_subvol_info(i)
)
else:
mountpoint = partition_info.mountpoints[0] if partition_info.mountpoints else None