From ee22664bcb1fdedece15e07d047ba86f3d791ee6 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Tue, 24 Mar 2015 10:47:13 -0400 Subject: fix retrieving ESP partition type ESP are the only partitions we're detecting through their pt_type (modulo 0x12 which was Compaq Diagnostic & unlikely to be found on GPT...) However GPT has no equivalent to pt_type But we can test for ESP flag --- perl-install/partition_table/gpt.pm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'perl-install/partition_table') diff --git a/perl-install/partition_table/gpt.pm b/perl-install/partition_table/gpt.pm index 77173b268..fdcad1e85 100644 --- a/perl-install/partition_table/gpt.pm +++ b/perl-install/partition_table/gpt.pm @@ -107,8 +107,12 @@ sub read_one { c::get_disk_type($hd->{file}) eq "gpt" or die "$hd->{device} not a GPT disk ($hd->{file})"; my @pt; - # FIXME: just use '@pt = c::...' if part_numbers are always linear: + # FIXME: just use '@pt = map { ... } c::...' if part_numbers are always linear: foreach (c::get_disk_partitions($hd->{file})) { + # fix detecting ESP (special case are they're detected through pt_type): + if (c::is_partition_ESP($hd->{file}, $_->{part_number}) { + $_->{pt_type} = 0xef; + } @pt[$_->{part_number}-1] = $_; } -- cgit v1.2.1