From 0d79e34dad3062575746f97c613f0e643a2d8b29 Mon Sep 17 00:00:00 2001 From: Martin Whitaker Date: Sat, 21 Jan 2017 20:23:18 +0000 Subject: 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. --- perl-install/fs/type.pm | 2 +- perl-install/partition_table/dos.pm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) 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); -- cgit v1.2.1