summaryrefslogtreecommitdiffstats
path: root/perl-install/fs/partitioning.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/fs/partitioning.pm')
-rw-r--r--perl-install/fs/partitioning.pm8
1 files changed, 5 insertions, 3 deletions
diff --git a/perl-install/fs/partitioning.pm b/perl-install/fs/partitioning.pm
index 015a7e4e8..18fa7e114 100644
--- a/perl-install/fs/partitioning.pm
+++ b/perl-install/fs/partitioning.pm
@@ -1,16 +1,18 @@
-package fs::partitioning; # $Id: partitioning.pm 243679 2008-07-29 11:55:58Z tv $
+package fs::partitioning;
use diagnostics;
use strict;
use common;
use fs::format;
+use fs::get;
use fs::type;
sub guess_partitions_to_format {
my ($fstab) = @_;
+ my $root_part = fs::get::root($fstab);
foreach (@$fstab) {
- $_->{mntpoint} = "swap" if isSwap($_);
+ $_->{mntpoint} = "swap" if isSwap($_) && ($_->{rootDevice} eq $root_part->{rootDevice} || !$_->{is_removable} && !$root_part->{is_removable});
$_->{mntpoint} or next;
add2hash_($_, { toFormat => $_->{notFormatted} }) if $_->{fs_type}; #- eg: do not set toFormat for isRawRAID (0xfd)
@@ -52,7 +54,7 @@ sub choose_partitions_to_format {
({
text => partition_table::description($e), type => 'bool',
val => \$e->{toFormatTmp}
- }, if_(!isLoopback($_) && !member($_->{fs_type}, 'reiserfs', 'xfs', 'jfs'), {
+ }, if_(!isLoopback($_) && isBlockCheckable($_), {
text => partition_table::description($e), type => 'bool', advanced => 1,
disabled => sub { !$e->{toFormatTmp} },
val => \$e->{toFormatCheck}