summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/partition_table.pm3
1 files changed, 2 insertions, 1 deletions
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index 5a849d5bf..aad737c70 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -618,10 +618,11 @@ sub add($$;$$) {
adjustStartAndEnd($hd, $part) unless $forceNoAdjust;
my $e = $hd->{primary}{extended};
+ my $nb_primaries = $hd->{device} =~ /^rd/ ? 3 : 1;
if (arch() =~ /^sparc|ppc/ ||
$primaryOrExtended eq 'Primary' ||
- $primaryOrExtended !~ /Extended/ && is_empty_array_ref($hd->{primary}{normal})) {
+ $primaryOrExtended !~ /Extended/ && @{$hd->{primary}{normal} || []} < $nb_primaries) {
eval { add_primary($hd, $part) };
return unless $@;
}