summaryrefslogtreecommitdiffstats
path: root/perl-install/partition_table.pm
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2000-05-19 17:15:36 +0000
committerFrancois Pons <fpons@mandriva.com>2000-05-19 17:15:36 +0000
commitde7d4baf2978f851c572282fe54355c94c69259e (patch)
tree1b17e14b7dfbeca165e18120a2bfbd2cc16e0727 /perl-install/partition_table.pm
parent36b067adfbe069090b8593cbfa9c8c2e5f016656 (diff)
downloaddrakx-backup-do-not-use-de7d4baf2978f851c572282fe54355c94c69259e.tar
drakx-backup-do-not-use-de7d4baf2978f851c572282fe54355c94c69259e.tar.gz
drakx-backup-do-not-use-de7d4baf2978f851c572282fe54355c94c69259e.tar.bz2
drakx-backup-do-not-use-de7d4baf2978f851c572282fe54355c94c69259e.tar.xz
drakx-backup-do-not-use-de7d4baf2978f851c572282fe54355c94c69259e.zip
*** empty log message ***
Diffstat (limited to 'perl-install/partition_table.pm')
-rw-r--r--perl-install/partition_table.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index b3719cf81..e941a1529 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -358,7 +358,9 @@ sub read_one($$) {
my ($hd, $sector) = @_;
my ($pt, $info);
- foreach ('dos', 'bsd', 'sun', 'mac', 'unknown') {
+ #- SUN bioses may blank disk or refuse to load it if the partition is unknown.
+ my @parttype = arch() =~ /^sparc/ ? ('sun', 'unknown') : ('dos', 'bsd', 'sun', 'mac', 'unknown');
+ foreach (@parttype) {
/unknown/ and die "unknown partition table format";
eval {
bless $hd, "partition_table_$_";
@@ -516,6 +518,8 @@ sub add_primary($$) {
}
sub add_extended {
+ arch() =~ /^sparc/ and die _("Extended partition not supported on this platform");
+
my ($hd, $part, $extended_type) = @_;
$extended_type =~ s/Extended_?//;
@@ -576,7 +580,8 @@ sub add($$;$$) {
my $e = $hd->{primary}{extended};
- if ($primaryOrExtended eq 'Primary' ||
+ if (arch() =~ /^sparc/ ||
+ $primaryOrExtended eq 'Primary' ||
$primaryOrExtended !~ /Extended/ && is_empty_array_ref($hd->{primary}{normal})) {
eval { add_primary($hd, $part) };
return unless $@;