diff options
author | Martin Whitaker <mageia@martin-whitaker.me.uk> | 2017-01-21 20:23:18 +0000 |
---|---|---|
committer | Martin Whitaker <mageia@martin-whitaker.me.uk> | 2017-02-25 11:31:16 +0000 |
commit | 0d79e34dad3062575746f97c613f0e643a2d8b29 (patch) | |
tree | 16d66903829db5b2df091368809e10633775d78d | |
parent | 75445cb236238e0203eb3e162c0f7ebcddcceba2 (diff) | |
download | drakx-0d79e34dad3062575746f97c613f0e643a2d8b29.tar drakx-0d79e34dad3062575746f97c613f0e643a2d8b29.tar.gz drakx-0d79e34dad3062575746f97c613f0e643a2d8b29.tar.bz2 drakx-0d79e34dad3062575746f97c613f0e643a2d8b29.tar.xz drakx-0d79e34dad3062575746f97c613f0e643a2d8b29.zip |
Preserve DOS "Empty" partitions instead of treating them as free space (mga#20074).
To minimise the changes this close to mga6 release (and until we fix
the bug in partition auto-allocation that mistakenly creates BIOS boot
partitions non-GPT disks), reuse the BIOS_GRUB flag for flagging Empty
partitions, as the real partition ID (0x00) is used to flag free space.
-rw-r--r-- | perl-install/fs/type.pm | 2 | ||||
-rw-r--r-- | perl-install/partition_table/dos.pm | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/perl-install/fs/type.pm b/perl-install/fs/type.pm index ad84738f7..a6a53c83e 100644 --- a/perl-install/fs/type.pm +++ b/perl-install/fs/type.pm @@ -26,7 +26,7 @@ my (%type_name2pt_type, %type_name2fs_type, %fs_type2pt_type, %pt_type2fs_type, 0x83 => 'btrfs', 'Journalised FS: Btrfs', (is_uefi() ? (0xef => 'vfat', 'EFI System Partition') : - ('BIOS_GRUB' => 'BIOS_GRUB', 'BIOS boot partition'), + ('BIOS_GRUB' => 'BIOS_GRUB', 'BIOS boot or Empty partition') ), if_(arch() =~ /i.86|x86_64/, 0x83 => 'xfs', 'Journalised FS: XFS', diff --git a/perl-install/partition_table/dos.pm b/perl-install/partition_table/dos.pm index 69566aaa8..4e8dbf1f2 100644 --- a/perl-install/partition_table/dos.pm +++ b/perl-install/partition_table/dos.pm @@ -212,6 +212,7 @@ sub read_one { sysread $F, $tmp, psizeof($format) or die "error while reading partition table in sector $sector"; my %h; @h{@fields} = unpack $format, $tmp; + $h{pt_type} = 'BIOS_GRUB' if $h{pt_type} == 0 && $h{size} > 0; fs::type::set_pt_type(\%h, $h{pt_type}); \%h; } (1..$nb_primary); |