summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2004-02-18 16:25:24 +0000
committerPascal Rigaux <pixel@mandriva.com>2004-02-18 16:25:24 +0000
commitb419083ebecca691bdd92cc9c035e96affd62a72 (patch)
treee92d353ec4e2289b51f3398a15ce36576ab4bae7
parentc0ebed8e0168510eeb852447b4e659f516afe366 (diff)
downloaddrakx-b419083ebecca691bdd92cc9c035e96affd62a72.tar
drakx-b419083ebecca691bdd92cc9c035e96affd62a72.tar.gz
drakx-b419083ebecca691bdd92cc9c035e96affd62a72.tar.bz2
drakx-b419083ebecca691bdd92cc9c035e96affd62a72.tar.xz
drakx-b419083ebecca691bdd92cc9c035e96affd62a72.zip
type 0x17 *can* be ntfs, assuming it is when we don't care much, and check if it is ntfs otherwise
-rw-r--r--perl-install/fsedit.pm5
-rw-r--r--perl-install/partition_table.pm4
2 files changed, 5 insertions, 4 deletions
diff --git a/perl-install/fsedit.pm b/perl-install/fsedit.pm
index 58143023a..a41a73a97 100644
--- a/perl-install/fsedit.pm
+++ b/perl-install/fsedit.pm
@@ -224,9 +224,10 @@ sub hds {
$_->{type} = typeOfPart($_->{device}) || 0x100 foreach grep { $_->{type} == 0x100 } partition_table::get_normal_parts($hd);
#- special case for type overloading (eg: reiserfs is 0x183)
- foreach (grep { isExt2($_) || $_->{type} == 0x7 } partition_table::get_normal_parts($hd)) {
+ foreach (grep { isExt2($_) || $_->{type} == 0x7 || $_->{type} == 0x17 } partition_table::get_normal_parts($hd)) {
+ my $wanted_type = $_->{type} == 0x17 ? 0x7 : $_->{type};
my $type = typeOfPart($_->{device});
- $_->{type} = $type if ($type & 0xff) == $_->{type} || $type && $hd->isa('partition_table::gpt');
+ $_->{type} = $type if ($type & 0xff) == $wanted_type || $type && $hd->isa('partition_table::gpt');
}
push @hds, $hd;
}
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index 6d7e519ae..0a01cfdea 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -398,11 +398,11 @@ sub assign_device_numbers {
#- isFat_or_NTFS isn't true for 0x7 partitions, only for 0x107.
#- alas 0x107 is not set correctly at this stage
#- solution: don't bother with 0x7 vs 0x107 here
- my ($c, @others) = grep { isFat_or_NTFS($_) || $_->{type} == 0x7 } @{$hd->{primary}{normal}};
+ my ($c, @others) = grep { isFat_or_NTFS($_) || $_->{type} == 0x7 || $_->{type} == 0x17 } @{$hd->{primary}{normal}};
$i = ord 'C';
$c->{device_windobe} = chr($i++) if $c;
- $_->{device_windobe} = chr($i++) foreach grep { isFat_or_NTFS($_) || $_->{type} == 0x7 } map { $_->{normal} } @{$hd->{extended}};
+ $_->{device_windobe} = chr($i++) foreach grep { isFat_or_NTFS($_) || $_->{type} == 0x7 || $_->{type} == 0x17 } map { $_->{normal} } @{$hd->{extended}};
$_->{device_windobe} = chr($i++) foreach @others;
}